x86mmfirst.inc 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880
  1. in_x86_movss
  2. ,in_x86_movapd
  3. ,in_x86_movhpd
  4. ,in_x86_movlpd
  5. ,in_x86_movupd
  6. ,in_x86_movsd_from_mem
  7. ,in_x86_movd_from_mem
  8. ,in_x86_pmovsxbd_from_mem
  9. ,in_x86_pmovzxbd_from_mem
  10. ,in_x86_pmovsxwq_from_mem
  11. ,in_x86_pmovzxwq_from_mem
  12. : //out r0:xmm;r1:ptr32;
  13. begin
  14. expectloc:=LOC_MMREGISTER;
  15. result:=nil;
  16. end;
  17. in_x86_movaps
  18. ,in_x86_movups
  19. ,in_x86_sqrtpd_from_mem
  20. ,in_x86_movdqa_from_mem
  21. ,in_x86_movdqu_from_mem
  22. ,in_x86_movsldup_from_mem
  23. ,in_x86_movshdup_from_mem
  24. ,in_x86_lddqu
  25. ,in_x86_pabsb_from_mem
  26. ,in_x86_pabsw_from_mem
  27. ,in_x86_pabsd_from_mem
  28. ,in_x86_movntdqa
  29. : //out r0:xmm;r1:ptr128;
  30. begin
  31. expectloc:=LOC_MMREGISTER;
  32. result:=nil;
  33. end;
  34. in_x86_movss_to_mem
  35. ,in_x86_movapd_to_mem
  36. ,in_x86_movntpd_to_mem
  37. ,in_x86_movhpd_to_mem
  38. ,in_x86_movlpd_to_mem
  39. ,in_x86_movupd_to_mem
  40. ,in_x86_movsd_to_mem
  41. ,in_x86_movd_to_mem
  42. : //r0:ptr32;r1:xmm;
  43. begin
  44. expectloc:=LOC_VOID;
  45. result:=nil;
  46. end;
  47. in_x86_movaps_to_mem
  48. ,in_x86_movups_to_mem
  49. ,in_x86_movdqa
  50. ,in_x86_movdqu
  51. ,in_x86_movntdq
  52. : //r0:ptr128;r1:xmm;
  53. begin
  54. expectloc:=LOC_VOID;
  55. result:=nil;
  56. end;
  57. in_x86_movss_to_val
  58. : //out r0:f32;r1:xmm;
  59. begin
  60. expectloc:=LOC_MMREGISTER;
  61. result:=nil;
  62. end;
  63. in_x86_movss_from_val
  64. : //out r0:xmm;r1:f32;
  65. begin
  66. expectloc:=LOC_MMREGISTER;
  67. result:=nil;
  68. end;
  69. in_x86_movlps
  70. ,in_x86_movhps
  71. ,in_x86_cvtpi2ps_from_mem
  72. ,in_x86_maxsd_from_mem
  73. ,in_x86_cvtdq2pd_from_mem
  74. ,in_x86_cvtpi2pd_from_mem
  75. ,in_x86_cvtps2pd_from_mem
  76. ,in_x86_cvtsd2ss_from_mem
  77. : //var r0:xmm;r1:ptr64;
  78. begin
  79. expectloc:=LOC_MMREGISTER;
  80. result:=nil;
  81. end;
  82. in_x86_movlps_to_mem
  83. ,in_x86_movhps_to_mem
  84. ,in_x86_movq_to_mem
  85. : //r0:ptr64;r1:xmm;
  86. begin
  87. expectloc:=LOC_VOID;
  88. result:=nil;
  89. end;
  90. in_x86_movlhps
  91. ,in_x86_movhlps
  92. ,in_x86_addps
  93. ,in_x86_subps
  94. ,in_x86_mulps
  95. ,in_x86_divps
  96. ,in_x86_rcpps
  97. ,in_x86_sqrtps
  98. ,in_x86_maxps
  99. ,in_x86_minps
  100. ,in_x86_rsqrtps
  101. ,in_x86_andps
  102. ,in_x86_orps
  103. ,in_x86_xorps
  104. ,in_x86_andnps
  105. ,in_x86_unpckhps
  106. ,in_x86_unpcklps
  107. ,in_x86_addpd
  108. ,in_x86_divpd
  109. ,in_x86_maxpd
  110. ,in_x86_minpd
  111. ,in_x86_mulpd
  112. ,in_x86_subpd
  113. ,in_x86_andpd
  114. ,in_x86_andnpd
  115. ,in_x86_orpd
  116. ,in_x86_xorpd
  117. ,in_x86_unpckhpd
  118. ,in_x86_unpcklpd
  119. ,in_x86_cvtdq2pd
  120. ,in_x86_cvtdq2ps
  121. ,in_x86_cvtpd2dq
  122. ,in_x86_cvtpd2ps
  123. ,in_x86_cvtps2dq
  124. ,in_x86_cvtps2pd
  125. ,in_x86_cvtsd2ss
  126. ,in_x86_cvttpd2dq
  127. ,in_x86_cvttps2dq
  128. ,in_x86_packssdw
  129. ,in_x86_packsswb
  130. ,in_x86_packuswb
  131. ,in_x86_paddb
  132. ,in_x86_paddw
  133. ,in_x86_paddd
  134. ,in_x86_paddq
  135. ,in_x86_paddsb
  136. ,in_x86_paddsw
  137. ,in_x86_paddusb
  138. ,in_x86_paddusw
  139. ,in_x86_pand
  140. ,in_x86_pandn
  141. ,in_x86_por
  142. ,in_x86_pxor
  143. ,in_x86_pcmpeqb
  144. ,in_x86_pcmpeqw
  145. ,in_x86_pcmpeqd
  146. ,in_x86_pcmpgtb
  147. ,in_x86_pcmpgtw
  148. ,in_x86_pcmpgtd
  149. ,in_x86_pmullw
  150. ,in_x86_pmulhw
  151. ,in_x86_pmulhuw_sse2
  152. ,in_x86_pmuludq
  153. ,in_x86_psllw_sse2
  154. ,in_x86_pslld_sse2
  155. ,in_x86_psllq_sse2
  156. ,in_x86_psrad_sse2
  157. ,in_x86_psraw_sse2
  158. ,in_x86_psrlw_sse2
  159. ,in_x86_psrld_sse2
  160. ,in_x86_psrlq_sse2
  161. ,in_x86_psubb
  162. ,in_x86_psubw
  163. ,in_x86_psubd
  164. ,in_x86_psubq
  165. ,in_x86_psubsb
  166. ,in_x86_psubsw
  167. ,in_x86_pmaddwd
  168. ,in_x86_psubusb
  169. ,in_x86_psubusw
  170. ,in_x86_punpckhbw
  171. ,in_x86_punpckhwd
  172. ,in_x86_punpckhdq
  173. ,in_x86_punpcklbw
  174. ,in_x86_punpcklwd
  175. ,in_x86_punpckldq
  176. ,in_x86_pavgb_sse2
  177. ,in_x86_pavgw_sse2
  178. ,in_x86_pminub_sse2
  179. ,in_x86_pminsw_sse2
  180. ,in_x86_pmaxsw_sse2
  181. ,in_x86_pmaxub_sse2
  182. ,in_x86_psadbw_sse2
  183. ,in_x86_punpckhqdq
  184. ,in_x86_punpcklqdq
  185. ,in_x86_addsubps
  186. ,in_x86_addsubpd
  187. ,in_x86_haddps
  188. ,in_x86_haddpd
  189. ,in_x86_hsubps
  190. ,in_x86_hsubpd
  191. ,in_x86_psignb
  192. ,in_x86_psignw
  193. ,in_x86_psignd
  194. ,in_x86_pshufb
  195. ,in_x86_pmulhrsw
  196. ,in_x86_pmaddubsw
  197. ,in_x86_phsubw
  198. ,in_x86_phsubsw
  199. ,in_x86_phsubd
  200. ,in_x86_phaddsw
  201. ,in_x86_phaddw
  202. ,in_x86_phaddd
  203. ,in_x86_phminposuw
  204. ,in_x86_pmulld
  205. ,in_x86_pmuldq
  206. ,in_x86_pminsb
  207. ,in_x86_pminuw
  208. ,in_x86_pminsd
  209. ,in_x86_pminud
  210. ,in_x86_pmaxsb
  211. ,in_x86_pmaxuw
  212. ,in_x86_pmaxsd
  213. ,in_x86_pmaxud
  214. ,in_x86_ptest
  215. ,in_x86_pcmpeqq
  216. ,in_x86_packusdw
  217. ,in_x86_pcmpgtq
  218. : //var r0:xmm;r1:xmm;
  219. begin
  220. expectloc:=LOC_MMREGISTER;
  221. result:=nil;
  222. end;
  223. in_x86_addss
  224. ,in_x86_subss
  225. ,in_x86_mulss
  226. ,in_x86_divss
  227. ,in_x86_rcpss
  228. ,in_x86_sqrtss
  229. ,in_x86_maxss
  230. ,in_x86_minss
  231. ,in_x86_rsqrtss
  232. : //var r0:f32;r1:f32;
  233. begin
  234. expectloc:=LOC_MMREGISTER;
  235. result:=nil;
  236. end;
  237. in_x86_addss_from_mem
  238. ,in_x86_subss_from_mem
  239. ,in_x86_mulss_from_mem
  240. ,in_x86_divss_from_mem
  241. ,in_x86_rcpss_from_mem
  242. ,in_x86_sqrtss_from_mem
  243. ,in_x86_maxss_from_mem
  244. ,in_x86_minss_from_mem
  245. ,in_x86_rsqrtss_from_mem
  246. ,in_x86_cvtsi2ss_from_mem
  247. : //var r0:f32;r1:ptr32;
  248. begin
  249. expectloc:=LOC_MMREGISTER;
  250. result:=nil;
  251. end;
  252. in_x86_addps_from_mem
  253. ,in_x86_subps_from_mem
  254. ,in_x86_mulps_from_mem
  255. ,in_x86_divps_from_mem
  256. ,in_x86_rcpps_from_mem
  257. ,in_x86_sqrtps_from_mem
  258. ,in_x86_maxps_from_mem
  259. ,in_x86_minps_from_mem
  260. ,in_x86_rsqrtps_from_mem
  261. ,in_x86_andps_from_mem
  262. ,in_x86_orps_from_mem
  263. ,in_x86_xorps_from_mem
  264. ,in_x86_andnps_from_mem
  265. ,in_x86_unpckhps_from_mem
  266. ,in_x86_unpcklps_from_mem
  267. ,in_x86_addpd_from_mem
  268. ,in_x86_divpd_from_mem
  269. ,in_x86_maxpd_from_mem
  270. ,in_x86_minpd_from_mem
  271. ,in_x86_mulpd_from_mem
  272. ,in_x86_subpd_from_mem
  273. ,in_x86_andpd_from_mem
  274. ,in_x86_andnpd_from_mem
  275. ,in_x86_orpd_from_mem
  276. ,in_x86_xorpd_from_mem
  277. ,in_x86_unpckhpd_from_mem
  278. ,in_x86_unpcklpd_from_mem
  279. ,in_x86_cvtdq2ps_from_mem
  280. ,in_x86_cvtpd2dq_from_mem
  281. ,in_x86_cvtpd2ps_from_mem
  282. ,in_x86_cvtps2dq_from_mem
  283. ,in_x86_cvttpd2dq_from_mem
  284. ,in_x86_cvttps2dq_from_mem
  285. ,in_x86_packssdw_from_mem
  286. ,in_x86_packsswb_from_mem
  287. ,in_x86_packuswb_from_mem
  288. ,in_x86_paddb_from_mem
  289. ,in_x86_paddw_from_mem
  290. ,in_x86_paddd_from_mem
  291. ,in_x86_paddq_from_mem
  292. ,in_x86_paddsb_from_mem
  293. ,in_x86_paddsw_from_mem
  294. ,in_x86_paddusb_from_mem
  295. ,in_x86_paddusw_from_mem
  296. ,in_x86_pand_from_mem
  297. ,in_x86_pandn_from_mem
  298. ,in_x86_por_from_mem
  299. ,in_x86_pxor_from_mem
  300. ,in_x86_pcmpeqb_from_mem
  301. ,in_x86_pcmpeqw_from_mem
  302. ,in_x86_pcmpeqd_from_mem
  303. ,in_x86_pcmpgtb_from_mem
  304. ,in_x86_pcmpgtw_from_mem
  305. ,in_x86_pcmpgtd_from_mem
  306. ,in_x86_pmullw_from_mem
  307. ,in_x86_pmulhw_from_mem
  308. ,in_x86_pmulhuw_from_mem
  309. ,in_x86_pmuludq_from_mem
  310. ,in_x86_psllw_from_mem
  311. ,in_x86_pslld_from_mem
  312. ,in_x86_psllq_from_mem
  313. ,in_x86_psrad_from_mem
  314. ,in_x86_psraw_from_mem
  315. ,in_x86_psrlw_from_mem
  316. ,in_x86_psrld_from_mem
  317. ,in_x86_psrlq_from_mem
  318. ,in_x86_psubb_from_mem
  319. ,in_x86_psubw_from_mem
  320. ,in_x86_psubd_from_mem
  321. ,in_x86_psubq_from_mem
  322. ,in_x86_psubsb_from_mem
  323. ,in_x86_psubsw_from_mem
  324. ,in_x86_pmaddwd_from_mem
  325. ,in_x86_psubusb_from_mem
  326. ,in_x86_psubusw_from_mem
  327. ,in_x86_punpckhbw_from_mem
  328. ,in_x86_punpckhwd_from_mem
  329. ,in_x86_punpckhdq_from_mem
  330. ,in_x86_punpcklbw_from_mem
  331. ,in_x86_punpcklwd_from_mem
  332. ,in_x86_punpckldq_from_mem
  333. ,in_x86_pavgb_from_mem
  334. ,in_x86_pavgw_from_mem
  335. ,in_x86_pminub_from_mem
  336. ,in_x86_pminsw_from_mem
  337. ,in_x86_pmaxsw_from_mem
  338. ,in_x86_pmaxub_from_mem
  339. ,in_x86_psadbw_from_mem
  340. ,in_x86_punpckhqdq_from_mem
  341. ,in_x86_punpcklqdq_from_mem
  342. ,in_x86_addsubps_from_mem
  343. ,in_x86_addsubpd_from_mem
  344. ,in_x86_haddps_from_mem
  345. ,in_x86_haddpd_from_mem
  346. ,in_x86_hsubps_from_mem
  347. ,in_x86_hsubpd_from_mem
  348. ,in_x86_psignb_from_mem
  349. ,in_x86_psignw_from_mem
  350. ,in_x86_psignd_from_mem
  351. ,in_x86_pshufb_from_mem
  352. ,in_x86_pmulhrsw_from_mem
  353. ,in_x86_pmaddubsw_from_mem
  354. ,in_x86_phsubw_from_mem
  355. ,in_x86_phsubsw_from_mem
  356. ,in_x86_phsubd_from_mem
  357. ,in_x86_phaddsw_from_mem
  358. ,in_x86_phaddw_from_mem
  359. ,in_x86_phaddd_from_mem
  360. ,in_x86_phminposuw_from_mem
  361. ,in_x86_pmulld_from_mem
  362. ,in_x86_pmuldq_from_mem
  363. ,in_x86_pminsb_from_mem
  364. ,in_x86_pminuw_from_mem
  365. ,in_x86_pminsd_from_mem
  366. ,in_x86_pminud_from_mem
  367. ,in_x86_pmaxsb_from_mem
  368. ,in_x86_pmaxuw_from_mem
  369. ,in_x86_pmaxsd_from_mem
  370. ,in_x86_pmaxud_from_mem
  371. ,in_x86_ptest_from_mem
  372. ,in_x86_pcmpeqq_from_mem
  373. ,in_x86_packusdw_from_mem
  374. ,in_x86_pcmpgtq_from_mem
  375. : //var r0:xmm;r1:ptr128;
  376. begin
  377. expectloc:=LOC_MMREGISTER;
  378. result:=nil;
  379. end;
  380. in_x86_cmpss
  381. : //var r0:f32;r1:f32;imm:i32;
  382. begin
  383. expectloc:=LOC_MMREGISTER;
  384. result:=nil;
  385. end;
  386. in_x86_cmpss_from_mem
  387. : //var r0:f32;r1:ptr32;imm:i32;
  388. begin
  389. expectloc:=LOC_MMREGISTER;
  390. result:=nil;
  391. end;
  392. in_x86_cmpps
  393. ,in_x86_shufps
  394. ,in_x86_cmppd
  395. ,in_x86_shufpd
  396. ,in_x86_palignr
  397. ,in_x86_dpps
  398. ,in_x86_dppd
  399. ,in_x86_blendps
  400. ,in_x86_blendpd
  401. ,in_x86_insertps
  402. ,in_x86_mpsadbw
  403. ,in_x86_pblendw
  404. ,in_x86_pcmpestri
  405. ,in_x86_pcmpestrm
  406. ,in_x86_pcmpistri
  407. ,in_x86_pcmpistrm
  408. : //var r0:xmm;r1:xmm;imm:i32;
  409. begin
  410. expectloc:=LOC_MMREGISTER;
  411. result:=nil;
  412. end;
  413. in_x86_cmpps_from_mem
  414. ,in_x86_shufps_from_mem
  415. ,in_x86_cmppd_from_mem
  416. ,in_x86_shufpd_from_mem
  417. ,in_x86_palignr_from_mem
  418. ,in_x86_dpps_from_mem
  419. ,in_x86_dppd_from_mem
  420. ,in_x86_blendps_from_mem
  421. ,in_x86_blendpd_from_mem
  422. ,in_x86_mpsadbw_from_mem
  423. ,in_x86_pblendw_from_mem
  424. ,in_x86_pcmpestri_from_mem
  425. ,in_x86_pcmpestrm_from_mem
  426. ,in_x86_pcmpistri_from_mem
  427. ,in_x86_pcmpistrm_from_mem
  428. : //var r0:xmm;r1:ptr128;imm:i32;
  429. begin
  430. expectloc:=LOC_MMREGISTER;
  431. result:=nil;
  432. end;
  433. in_x86_cvtsi2ss
  434. : //var r0:f32;r1:reg;
  435. begin
  436. expectloc:=LOC_MMREGISTER;
  437. result:=nil;
  438. end;
  439. in_x86_cvtss2si
  440. ,in_x86_cvttss2si
  441. : //out r0:reg;r1:f32;
  442. begin
  443. expectloc:=LOC_REGISTER;
  444. result:=nil;
  445. end;
  446. in_x86_cvtss2si_from_mem
  447. ,in_x86_cvttss2si_from_mem
  448. : //out r0:reg;r1:ptr32;
  449. begin
  450. expectloc:=LOC_REGISTER;
  451. result:=nil;
  452. end;
  453. in_x86_cvtpi2ps
  454. ,in_x86_cvtpi2pd
  455. : //var r0:xmm;r1:mm;
  456. begin
  457. expectloc:=LOC_MMREGISTER;
  458. result:=nil;
  459. end;
  460. in_x86_cvtps2pi
  461. ,in_x86_cvttps2pi
  462. ,in_x86_movdq2q
  463. : //out r0:mm;r1:xmm;
  464. begin
  465. expectloc:=LOC_MMXREGISTER;
  466. result:=nil;
  467. end;
  468. in_x86_cvtps2pi_from_mem
  469. ,in_x86_cvttps2pi_from_mem
  470. : //out r0:mm;r1:ptr64;
  471. begin
  472. expectloc:=LOC_MMXREGISTER;
  473. result:=nil;
  474. end;
  475. in_x86_pmulhuw_mmx
  476. ,in_x86_psadbw_mmx
  477. ,in_x86_pavgb_mmx
  478. ,in_x86_pavgw_mmx
  479. ,in_x86_pmaxub_mmx
  480. ,in_x86_pminub_mmx
  481. ,in_x86_pmaxsw_mmx
  482. ,in_x86_pminsw_mmx
  483. : //var r0:mm;r1:mm;
  484. begin
  485. expectloc:=LOC_MMXREGISTER;
  486. result:=nil;
  487. end;
  488. in_x86_pmulhuw_mmx_from_mem
  489. ,in_x86_psadbw_mmx_from_mem
  490. ,in_x86_pavgb_mmx_from_mem
  491. ,in_x86_pavgw_mmx_from_mem
  492. ,in_x86_pmaxub_mmx_from_mem
  493. ,in_x86_pminub_mmx_from_mem
  494. ,in_x86_pmaxsw_mmx_from_mem
  495. ,in_x86_pminsw_mmx_from_mem
  496. : //var r0:mm;r1:ptr64;
  497. begin
  498. expectloc:=LOC_MMXREGISTER;
  499. result:=nil;
  500. end;
  501. in_x86_pextrw_mmx
  502. : //out r0:reg;r1:mm;imm:i32;
  503. begin
  504. expectloc:=LOC_REGISTER;
  505. result:=nil;
  506. end;
  507. in_x86_pinsrw_mmx
  508. : //var r0:mm;r1:reg;imm:i32;
  509. begin
  510. expectloc:=LOC_MMXREGISTER;
  511. result:=nil;
  512. end;
  513. in_x86_pmovmskb_mmx
  514. : //out r0:reg;r1:mm;
  515. begin
  516. expectloc:=LOC_REGISTER;
  517. result:=nil;
  518. end;
  519. in_x86_pshufw
  520. : //out r0:mm;r1:mm;imm:i32;
  521. begin
  522. expectloc:=LOC_MMXREGISTER;
  523. result:=nil;
  524. end;
  525. in_x86_pshufw_from_mem
  526. : //out r0:mm;r1:ptr64;imm:i32;
  527. begin
  528. expectloc:=LOC_MMXREGISTER;
  529. result:=nil;
  530. end;
  531. in_x86_movmskpd
  532. ,in_x86_movd_to_reg
  533. : //out r0:r32;r1:xmm;
  534. begin
  535. expectloc:=LOC_REGISTER;
  536. result:=nil;
  537. end;
  538. in_x86_movsd_to_val
  539. : //out r0:f64;r1:xmm;
  540. begin
  541. expectloc:=LOC_MMREGISTER;
  542. result:=nil;
  543. end;
  544. in_x86_movsd_from_val
  545. : //out r0:xmm;r1:f64;
  546. begin
  547. expectloc:=LOC_MMREGISTER;
  548. result:=nil;
  549. end;
  550. in_x86_addsd
  551. ,in_x86_divsd
  552. ,in_x86_minsd
  553. ,in_x86_subsd
  554. ,in_x86_comisd
  555. ,in_x86_ucomisd
  556. ,in_x86_cvtss2sd
  557. : //var r0:f64;r1:f64;
  558. begin
  559. expectloc:=LOC_MMREGISTER;
  560. result:=nil;
  561. end;
  562. in_x86_addsd_from_mem
  563. ,in_x86_divsd_from_mem
  564. ,in_x86_minsd_from_mem
  565. ,in_x86_mulsd_from_mem
  566. ,in_x86_subsd_from_mem
  567. ,in_x86_comisd_from_mem
  568. ,in_x86_ucomisd_from_mem
  569. : //var r0:f64;r1:ptr64;
  570. begin
  571. expectloc:=LOC_MMREGISTER;
  572. result:=nil;
  573. end;
  574. in_x86_maxsd
  575. ,in_x86_mulsd
  576. : //var r0:f64;r1:xmm;
  577. begin
  578. expectloc:=LOC_MMREGISTER;
  579. result:=nil;
  580. end;
  581. in_x86_sqrtpd
  582. ,in_x86_movddup
  583. ,in_x86_movsldup
  584. ,in_x86_movshdup
  585. ,in_x86_pabsb
  586. ,in_x86_pabsw
  587. ,in_x86_pabsd
  588. ,in_x86_pmovsxbw
  589. ,in_x86_pmovzxbw
  590. ,in_x86_pmovsxbd
  591. ,in_x86_pmovzxbd
  592. ,in_x86_pmovsxbq
  593. ,in_x86_pmovzxbq
  594. ,in_x86_pmovsxwd
  595. ,in_x86_pmovzxwd
  596. ,in_x86_pmovsxwq
  597. ,in_x86_pmovzxwq
  598. ,in_x86_pmovsxdq
  599. ,in_x86_pmovzxdq
  600. : //out r0:xmm;r1:xmm;
  601. begin
  602. expectloc:=LOC_MMREGISTER;
  603. result:=nil;
  604. end;
  605. in_x86_sqrtsd
  606. : //out r0:f64;r1:f64;
  607. begin
  608. expectloc:=LOC_MMREGISTER;
  609. result:=nil;
  610. end;
  611. in_x86_sqrtsd_from_mem
  612. : //out r0:f64;r1:ptr64;
  613. begin
  614. expectloc:=LOC_MMREGISTER;
  615. result:=nil;
  616. end;
  617. in_x86_cmpsd
  618. : //var r0:f64;r1:f64;imm:i32;
  619. begin
  620. expectloc:=LOC_MMREGISTER;
  621. result:=nil;
  622. end;
  623. in_x86_cmpsd_from_mem
  624. : //var r0:f64;r1:ptr64;imm:i32;
  625. begin
  626. expectloc:=LOC_MMREGISTER;
  627. result:=nil;
  628. end;
  629. in_x86_cvtpd2pi
  630. ,in_x86_cvttpd2pi
  631. : //var r0:mm;r1:xmm;
  632. begin
  633. expectloc:=LOC_MMXREGISTER;
  634. result:=nil;
  635. end;
  636. in_x86_cvtpd2pi_from_mem
  637. ,in_x86_cvttpd2pi_from_mem
  638. : //var r0:mm;r1:ptr128;
  639. begin
  640. expectloc:=LOC_MMXREGISTER;
  641. result:=nil;
  642. end;
  643. in_x86_cvtsd2si
  644. ,in_x86_cvttsd2si
  645. : //var r0:sreg;r1:xmm;
  646. begin
  647. expectloc:=LOC_REGISTER;
  648. result:=nil;
  649. end;
  650. in_x86_cvtsd2si_from_mem
  651. ,in_x86_cvttsd2si_from_mem
  652. : //var r0:sreg;r1:ptr64;
  653. begin
  654. expectloc:=LOC_REGISTER;
  655. result:=nil;
  656. end;
  657. in_x86_cvtsi2sd
  658. : //var r0:f64;r1:r32;
  659. begin
  660. expectloc:=LOC_MMREGISTER;
  661. result:=nil;
  662. end;
  663. in_x86_cvtsi2sd_from_mem
  664. ,in_x86_cvtss2sd_from_mem
  665. : //var r0:f64;r1:ptr32;
  666. begin
  667. expectloc:=LOC_MMREGISTER;
  668. result:=nil;
  669. end;
  670. in_x86_movd_from_reg
  671. : //out r0:xmm;r1:r32;
  672. begin
  673. expectloc:=LOC_MMREGISTER;
  674. result:=nil;
  675. end;
  676. in_x86_movq_from_mem
  677. ,in_x86_movddup_from_mem
  678. ,in_x86_pmovsxbw_from_mem
  679. ,in_x86_pmovzxbw_from_mem
  680. ,in_x86_pmovsxwd_from_mem
  681. ,in_x86_pmovzxwd_from_mem
  682. ,in_x86_pmovsxdq_from_mem
  683. ,in_x86_pmovzxdq_from_mem
  684. : //out r0:xmm;r1:ptr64;
  685. begin
  686. expectloc:=LOC_MMREGISTER;
  687. result:=nil;
  688. end;
  689. in_x86_pmovmskb
  690. : //var r0:r32;r1:xmm;
  691. begin
  692. expectloc:=LOC_REGISTER;
  693. result:=nil;
  694. end;
  695. in_x86_pextrw_sse2
  696. : //out r0:r16;r1:xmm;imm:i32;
  697. begin
  698. expectloc:=LOC_REGISTER;
  699. result:=nil;
  700. end;
  701. in_x86_pinsrw_sse2
  702. ,in_x86_pinsrb
  703. ,in_x86_pinsrd
  704. : //var r0:xmm;r1:r32;imm:i32;
  705. begin
  706. expectloc:=LOC_MMREGISTER;
  707. result:=nil;
  708. end;
  709. in_x86_pinsrw_from_mem
  710. : //var r0:xmm;r1:ptr16;imm:i32;
  711. begin
  712. expectloc:=LOC_MMREGISTER;
  713. result:=nil;
  714. end;
  715. in_x86_psllw_sse2_imm
  716. ,in_x86_pslld_sse2_imm
  717. ,in_x86_psllq_sse2_imm
  718. ,in_x86_psrad_sse2_imm
  719. ,in_x86_psraw_sse2_imm
  720. ,in_x86_psrlw_sse2_imm
  721. ,in_x86_psrld_sse2_imm
  722. ,in_x86_psrlq_sse2_imm
  723. ,in_x86_pslldq
  724. ,in_x86_psrldq
  725. : //var r0:xmm;imm:i32;
  726. begin
  727. expectloc:=LOC_MMREGISTER;
  728. result:=nil;
  729. end;
  730. in_x86_maskmovdqu
  731. : //addr:edi_ptr;r0:xmm;r1:xmm;
  732. begin
  733. expectloc:=LOC_VOID;
  734. result:=nil;
  735. end;
  736. in_x86_movq2dq
  737. : //out r0:xmm;r1:mm;
  738. begin
  739. expectloc:=LOC_MMREGISTER;
  740. result:=nil;
  741. end;
  742. in_x86_pshufhw
  743. ,in_x86_pshuflw
  744. ,in_x86_pshufd
  745. ,in_x86_roundps
  746. ,in_x86_roundss
  747. ,in_x86_roundpd
  748. : //out r0:xmm;r1:xmm;imm:i32;
  749. begin
  750. expectloc:=LOC_MMREGISTER;
  751. result:=nil;
  752. end;
  753. in_x86_pshufhw_from_mem
  754. ,in_x86_pshuflw_from_mem
  755. ,in_x86_pshufd_from_mem
  756. ,in_x86_roundps_from_mem
  757. ,in_x86_roundpd_from_mem
  758. : //out r0:xmm;r1:ptr128;imm:i32;
  759. begin
  760. expectloc:=LOC_MMREGISTER;
  761. result:=nil;
  762. end;
  763. in_x86_blendvps
  764. ,in_x86_blendvpd
  765. ,in_x86_pblendvb
  766. : //var r0:xmm;r1:xmm;mask:implicit_xmm0;
  767. begin
  768. expectloc:=LOC_MMREGISTER;
  769. result:=nil;
  770. end;
  771. in_x86_blendvps_from_mem
  772. ,in_x86_blendvpd_from_mem
  773. ,in_x86_pblendvb_from_mem
  774. : //var r0:xmm;r1:ptr128;mask:implicit_xmm0;
  775. begin
  776. expectloc:=LOC_MMREGISTER;
  777. result:=nil;
  778. end;
  779. in_x86_roundss_from_mem
  780. : //out r0:xmm;r1:ptr32;imm:i32;
  781. begin
  782. expectloc:=LOC_MMREGISTER;
  783. result:=nil;
  784. end;
  785. in_x86_roundsd
  786. : //out r0:f64;r1:f64;imm:i32;
  787. begin
  788. expectloc:=LOC_MMREGISTER;
  789. result:=nil;
  790. end;
  791. in_x86_roundsd_from_mem
  792. : //out r0:f64;r1:ptr64;imm:i32;
  793. begin
  794. expectloc:=LOC_MMREGISTER;
  795. result:=nil;
  796. end;
  797. in_x86_insertps_from_mem
  798. ,in_x86_pinsrd_from_mem
  799. : //var r0:xmm;r1:ptr32;imm:i32;
  800. begin
  801. expectloc:=LOC_MMREGISTER;
  802. result:=nil;
  803. end;
  804. in_x86_extractps
  805. ,in_x86_pextrd
  806. : //out r0:r32;r1:xmm;imm:i32;
  807. begin
  808. expectloc:=LOC_REGISTER;
  809. result:=nil;
  810. end;
  811. in_x86_extractps_from_mem
  812. ,in_x86_pextrd_to_mem
  813. : //r0:ptr32;r1:xmm;imm:i32;
  814. begin
  815. expectloc:=LOC_VOID;
  816. result:=nil;
  817. end;
  818. in_x86_pinsrb_from_mem
  819. : //var r0:xmm;r1:ptr8;imm:i32;
  820. begin
  821. expectloc:=LOC_MMREGISTER;
  822. result:=nil;
  823. end;
  824. {$ifdef X86_64}
  825. in_x86_pinsrq
  826. : //var r0:xmm;r1:reg;imm:i32;
  827. begin
  828. expectloc:=LOC_MMREGISTER;
  829. result:=nil;
  830. end;
  831. {$endif}
  832. {$ifdef X86_64}
  833. in_x86_pinsrq_from_mem
  834. : //var r0:xmm;r1:ptr64;imm:i32;
  835. begin
  836. expectloc:=LOC_MMREGISTER;
  837. result:=nil;
  838. end;
  839. {$endif}
  840. in_x86_pextrb
  841. : //out r0:r8;r1:xmm;imm:i32;
  842. begin
  843. expectloc:=LOC_REGISTER;
  844. result:=nil;
  845. end;
  846. in_x86_pextrb_to_mem
  847. : //r0:ptr8;r1:xmm;imm:i32;
  848. begin
  849. expectloc:=LOC_VOID;
  850. result:=nil;
  851. end;
  852. in_x86_pextrw_sse41_to_mem
  853. : //r0:ptr16;r1:xmm;imm:i32;
  854. begin
  855. expectloc:=LOC_VOID;
  856. result:=nil;
  857. end;
  858. {$ifdef X86_64}
  859. in_x86_pextrq
  860. : //out r0:r32;r1:xmm;imm:i32;
  861. begin
  862. expectloc:=LOC_REGISTER;
  863. result:=nil;
  864. end;
  865. {$endif}
  866. {$ifdef X86_64}
  867. in_x86_pextrq_to_mem
  868. : //r0:ptr64;r1:xmm;imm:i32;
  869. begin
  870. expectloc:=LOC_VOID;
  871. result:=nil;
  872. end;
  873. {$endif}
  874. in_x86_pmovsxbq_from_mem
  875. ,in_x86_pmovzxbq_from_mem
  876. : //out r0:xmm;r1:ptr16;
  877. begin
  878. expectloc:=LOC_MMREGISTER;
  879. result:=nil;
  880. end;