two_byte_opcodes.isa (6616:33837b097d69) two_byte_opcodes.isa (6696:e533bec78924)
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

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

599 0x2: PUNPCKHDQ(Pq,Qq);
600 0x3: PACKSSDW(Pq,Qq);
601 0x6: MOVD(Pq,Edp);
602 0x7: MOVQ(Pq,Qq);
603 default: UD2();
604 }
605 // repe (0xF3)
606 0x4: decode OPCODE_OP_BOTTOM3 {
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

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

599 0x2: PUNPCKHDQ(Pq,Qq);
600 0x3: PACKSSDW(Pq,Qq);
601 0x6: MOVD(Pq,Edp);
602 0x7: MOVQ(Pq,Qq);
603 default: UD2();
604 }
605 // repe (0xF3)
606 0x4: decode OPCODE_OP_BOTTOM3 {
607 0x7: WarnUnimpl::movdqu_Vo_Wo();
607 0x7: MOVDQU(Vo,Wo);
608 default: UD2();
609 }
610 // operand size (0x66)
611 0x1: decode OPCODE_OP_BOTTOM3 {
612 0x0: PUNPCKHBW(Vo,Wo);
613 0x1: PUNPCKHWD(Vo,Wo);
614 0x2: PUNPCKHDQ(Vo,Wo);
615 0x3: PACKSSDW(Vo,Wo);
616 0x4: PUNPCKLQDQ(Vo,Wq);
617 0x5: PUNPCKHQDQ(Vo,Wq);
618 0x6: WarnUnimpl::movd_Vo_Ed();
608 default: UD2();
609 }
610 // operand size (0x66)
611 0x1: decode OPCODE_OP_BOTTOM3 {
612 0x0: PUNPCKHBW(Vo,Wo);
613 0x1: PUNPCKHWD(Vo,Wo);
614 0x2: PUNPCKHDQ(Vo,Wo);
615 0x3: PACKSSDW(Vo,Wo);
616 0x4: PUNPCKLQDQ(Vo,Wq);
617 0x5: PUNPCKHQDQ(Vo,Wq);
618 0x6: WarnUnimpl::movd_Vo_Ed();
619 0x7: WarnUnimpl::movdqa_Vo_Wo();
619 0x7: MOVDQA(Vo,Wo);
620 }
621 default: UD2();
622 }
623 0x0E: decode LEGACY_DECODEVAL {
624 // no prefix
625 0x0: decode OPCODE_OP_BOTTOM3 {
626 0x0: PSHUFW(Pq,Qq,Ib);
627 //0x1: group12_pshimw();

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

697 0x1: WarnUnimpl::vmwrite_Gdp_Edp();
698 0x6: MOVD(Edp,Pdp);
699 0x7: MOVQ(Qq,Pq);
700 default: UD2();
701 }
702 // repe (0xF3)
703 0x4: decode OPCODE_OP_BOTTOM3 {
704 0x6: MOVQ(Vq,Wq);
620 }
621 default: UD2();
622 }
623 0x0E: decode LEGACY_DECODEVAL {
624 // no prefix
625 0x0: decode OPCODE_OP_BOTTOM3 {
626 0x0: PSHUFW(Pq,Qq,Ib);
627 //0x1: group12_pshimw();

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

697 0x1: WarnUnimpl::vmwrite_Gdp_Edp();
698 0x6: MOVD(Edp,Pdp);
699 0x7: MOVQ(Qq,Pq);
700 default: UD2();
701 }
702 // repe (0xF3)
703 0x4: decode OPCODE_OP_BOTTOM3 {
704 0x6: MOVQ(Vq,Wq);
705 0x7: WarnUnimpl::movdqu_Wo_Vo();
705 0x7: MOVDQU(Wo,Vo);
706 default: UD2();
707 }
708 // operand size (0x66)
709 0x1: decode OPCODE_OP_BOTTOM3 {
710 0x4: WarnUnimpl::haddpd_Vo_Wo();
711 0x5: WarnUnimpl::hsubpd_Vo_Wo();
712 0x6: WarnUnimpl::movd_Ed_Vd();
706 default: UD2();
707 }
708 // operand size (0x66)
709 0x1: decode OPCODE_OP_BOTTOM3 {
710 0x4: WarnUnimpl::haddpd_Vo_Wo();
711 0x5: WarnUnimpl::hsubpd_Vo_Wo();
712 0x6: WarnUnimpl::movd_Ed_Vd();
713 0x7: WarnUnimpl::movdqa_Wo_Vo();
713 0x7: MOVDQA(Wo,Vo);
714 default: UD2();
715 }
716 // repne (0xF2)
717 0x8: decode OPCODE_OP_BOTTOM3 {
718 0x4: WarnUnimpl::haddps_Vo_Wo();
719 0x5: WarnUnimpl::hsubps_Vo_Wo();
720 default: UD2();
721 }

--- 364 unchanged lines hidden ---
714 default: UD2();
715 }
716 // repne (0xF2)
717 0x8: decode OPCODE_OP_BOTTOM3 {
718 0x4: WarnUnimpl::haddps_Vo_Wo();
719 0x5: WarnUnimpl::hsubps_Vo_Wo();
720 default: UD2();
721 }

--- 364 unchanged lines hidden ---