two_byte_opcodes.isa (6600:bb997cd711af) two_byte_opcodes.isa (6602:95b882ce7b10)
1// Copyright (c) 2008 The Regents of The University of Michigan
2// All rights reserved.
3//
4// Redistribution and use in source and binary forms, with or without
5// modification, are permitted provided that the following conditions are
6// met: redistributions of source code must retain the above copyright
7// notice, this list of conditions and the following disclaimer;
8// redistributions in binary form must reproduce the above copyright

--- 365 unchanged lines hidden (view full) ---

374 //These moves should really use size o (octword), but
375 //because they are split in two, they use q (quadword).
376 0x0: Inst::MOVAPS(Vq,Wq);
377 0x1: Inst::MOVAPS(Wq,Vq);
378 0x2: Inst::CVTPI2PS(Vq,Qq);
379 0x3: movntps_Mo_Vo();
380 0x4: cvttps2pi_Pq_Wq();
381 0x5: cvtpS2pi_Pq_Wq();
1// Copyright (c) 2008 The Regents of The University of Michigan
2// All rights reserved.
3//
4// Redistribution and use in source and binary forms, with or without
5// modification, are permitted provided that the following conditions are
6// met: redistributions of source code must retain the above copyright
7// notice, this list of conditions and the following disclaimer;
8// redistributions in binary form must reproduce the above copyright

--- 365 unchanged lines hidden (view full) ---

374 //These moves should really use size o (octword), but
375 //because they are split in two, they use q (quadword).
376 0x0: Inst::MOVAPS(Vq,Wq);
377 0x1: Inst::MOVAPS(Wq,Vq);
378 0x2: Inst::CVTPI2PS(Vq,Qq);
379 0x3: movntps_Mo_Vo();
380 0x4: cvttps2pi_Pq_Wq();
381 0x5: cvtpS2pi_Pq_Wq();
382 0x6: ucomiss_Vd_Wd();
383 0x7: comiss_Vd_Wd();
382 0x6: Inst::UCOMISS(Vd,Wd);
383 0x7: Inst::COMISS(Vd,Wd);
384 }
385 // repe (0xF3)
386 0x4: decode OPCODE_OP_BOTTOM3 {
387 0x2: Inst::CVTSI2SS(Vd,Ed);
388 0x4: cvttss2si_Gd_Wd();
389 0x5: cvtss2si_Gd_Wd();
390 default: Inst::UD2();
391 }
392 // operand size (0x66)
393 0x1: decode OPCODE_OP_BOTTOM3 {
394 0x0: Inst::MOVAPD(Vo,Wo);
395 0x1: Inst::MOVAPD(Wo,Vo);
396 0x2: Inst::CVTPI2PD(Vo,Qq);
397 0x3: movntpd_Mo_Vo();
398 0x4: cvttpd2pi_Pq_Wo();
399 0x5: cvtpd2pi_Pq_Wo();
400 0x6: Inst::UCOMISD(Vq,Wq);
384 }
385 // repe (0xF3)
386 0x4: decode OPCODE_OP_BOTTOM3 {
387 0x2: Inst::CVTSI2SS(Vd,Ed);
388 0x4: cvttss2si_Gd_Wd();
389 0x5: cvtss2si_Gd_Wd();
390 default: Inst::UD2();
391 }
392 // operand size (0x66)
393 0x1: decode OPCODE_OP_BOTTOM3 {
394 0x0: Inst::MOVAPD(Vo,Wo);
395 0x1: Inst::MOVAPD(Wo,Vo);
396 0x2: Inst::CVTPI2PD(Vo,Qq);
397 0x3: movntpd_Mo_Vo();
398 0x4: cvttpd2pi_Pq_Wo();
399 0x5: cvtpd2pi_Pq_Wo();
400 0x6: Inst::UCOMISD(Vq,Wq);
401 0x7: comisd_Vq_Wq();
401 0x7: Inst::COMISD(Vq,Wq);
402 }
403 // repne (0xF2)
404 0x8: decode OPCODE_OP_BOTTOM3 {
405 // The size of the V operand should be q, not dp
406 0x2: Inst::CVTSI2SD(Vdp,Edp);
407 // The size of the W operand should be q, not dp
408 0x4: Inst::CVTTSD2SI(Gdp,Wdp);
409 0x5: cvtsd2si_Gd_Wq();

--- 713 unchanged lines hidden ---
402 }
403 // repne (0xF2)
404 0x8: decode OPCODE_OP_BOTTOM3 {
405 // The size of the V operand should be q, not dp
406 0x2: Inst::CVTSI2SD(Vdp,Edp);
407 // The size of the W operand should be q, not dp
408 0x4: Inst::CVTTSD2SI(Gdp,Wdp);
409 0x5: cvtsd2si_Gd_Wq();

--- 713 unchanged lines hidden ---