Deleted Added
sdiff udiff text old ( 5238:95f494fd38bd ) new ( 5240:6dc723c9c6a9 )
full compact
1// Copyright (c) 2007 The Hewlett-Packard Development Company
2// All rights reserved.
3//
4// Redistribution and use of this software in source and binary forms,
5// with or without modification, are permitted provided that the
6// following conditions are met:
7//
8// The software must be used only for Non-Commercial Use which means any

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

652 0x6: SETLE(Eb);
653 0x7: SETNLE(Eb);
654 }
655 }
656 0x14: decode OPCODE_OP_BOTTOM3 {
657 0x0: push_fs();
658 0x1: pop_fs();
659 0x2: Inst::CPUID(rAd);
660 0x3: Inst::BT(Ev,Gv);
661 0x4: shld_Ev_Gv_Ib();
662 0x5: shld_Ev_Gv_rCl();
663 0x6: xbts_and_cmpxchg();
664 0x7: ibts_and_cmpxchg();
665 }
666 0x15: decode OPCODE_OP_BOTTOM3 {
667 0x0: push_gs();
668 0x1: pop_gs();
669 0x2: rsm_smm();
670 0x3: Inst::BTS(Ev,Gv);
671 0x4: shrd_Ev_Gv_Ib();
672 0x5: shrd_Ev_Gv_rCl();
673 //0x6: group16();
674 0x6: decode MODRM_MOD {
675 0x3: decode MODRM_REG {
676 0x5: lfence();
677 0x6: mfence();
678 0x7: sfence();

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

686 }
687 }
688 0x7: Inst::IMUL(Gv,Ev);
689 }
690 0x16: decode OPCODE_OP_BOTTOM3 {
691 0x0: Inst::CMPXCHG(Eb,Gb);
692 0x1: Inst::CMPXCHG(Ev,Gv);
693 0x2: lss_Gz_Mp();
694 0x3: Inst::BTR(Ev,Gv);
695 0x4: lfs_Gz_Mp();
696 0x5: lgs_Gz_Mp();
697 //The size of the second operand in these instructions should
698 //really be "b" or "w", but it's set to v in order to have a
699 //consistent register size. This shouldn't affect behavior.
700 0x6: Inst::MOVZX_B(Gv,Ev);
701 0x7: Inst::MOVZX_W(Gv,Ev);
702 }
703 0x17: decode OPCODE_OP_BOTTOM3 {
704 0x0: jmpe_Jz(); // IA-64?
705 format Inst {
706 //0x1: group11_UD2();
707 0x1: UD2();
708 //0x2: group8_Ev_Ib();
709 0x2: decode MODRM_REG {
710 0x4: BT(Ev,Ib);
711 0x5: BTS(Ev,Ib);
712 0x6: BTR(Ev,Ib);
713 0x7: BTC(Ev,Ib);
714 default: UD2();
715 }
716 0x3: BTC(Ev,Gv);
717 }
718 0x4: bsf_Gv_Ev();
719 0x5: bsr_Gv_Ev();
720 //The size of the second operand in these instructions should
721 //really be "b" or "w", but it's set to v in order to have a
722 //consistent register size. This shouldn't affect behavior.
723 0x6: Inst::MOVSX_B(Gv,Ev);
724 0x7: Inst::MOVSX_W(Gv,Ev);
725 }

--- 231 unchanged lines hidden ---