Home | History | Annotate | Download | only in priv

Lines Matching refs:Prefix

82    Prefix"):
652 The top 16 bits of the prefix are 0x3141, just as a hacky way
653 to ensure it really is a valid prefix.
655 Things you can safely assume about a well-formed prefix:
662 typedef UInt Prefix;
671 #define PFX_LOCK (1<<7) /* bus LOCK prefix present (0xF0) */
672 #define PFX_F2 (1<<8) /* REP/REPE/REPZ prefix present (0xF2) */
673 #define PFX_F3 (1<<9) /* REPNE/REPNZ prefix present (0xF3) */
674 #define PFX_CS (1<<10) /* CS segment prefix present (0x2E) */
675 #define PFX_DS (1<<11) /* DS segment prefix present (0x3E) */
676 #define PFX_ES (1<<12) /* ES segment prefix present (0x26) */
677 #define PFX_FS (1<<13) /* FS segment prefix present (0x64) */
678 #define PFX_GS (1<<14) /* GS segment prefix present (0x65) */
679 #define PFX_SS (1<<15) /* SS segment prefix present (0x36) */
683 static Bool IS_VALID_PFX ( Prefix pfx ) {
687 static Bool haveREX ( Prefix pfx ) {
691 static Int getRexW ( Prefix pfx ) {
695 static Int getRexR ( Prefix pfx ) {
699 static Int getRexX ( Prefix pfx ) {
702 static Int getRexB ( Prefix pfx ) {
706 /* Check a prefix doesn't have F2 or F3 set in it, since usually that
708 static Bool haveF2orF3 ( Prefix pfx ) {
711 static Bool haveF2 ( Prefix pfx ) {
714 static Bool haveF3 ( Prefix pfx ) {
718 static Bool have66 ( Prefix pfx ) {
721 static Bool haveASO ( Prefix pfx ) {
726 static Bool have66noF2noF3 ( Prefix pfx )
733 static Bool haveF2no66noF3 ( Prefix pfx )
740 static Bool haveF3no66noF2 ( Prefix pfx )
747 static Bool haveF3noF2 ( Prefix pfx )
754 static Bool haveF2noF3 ( Prefix pfx )
761 static Bool haveNo66noF2noF3 ( Prefix pfx )
768 static Bool have66orF2orF3 ( Prefix pfx )
774 static Bool have66orF2 ( Prefix pfx )
779 /* Clear all the segment-override bits in a prefix. */
780 static Prefix clearSegBits ( Prefix p )
823 the same fashion that an 0x66 prefix indicates the operand size is
1117 static IRExpr* getIReg64rexX ( Prefix pfx, UInt lo3bits )
1124 static HChar* nameIReg64rexX ( Prefix pfx, UInt lo3bits )
1131 static HChar* nameIRegRexB ( Int sz, Prefix pfx, UInt lo3bits )
1140 static IRExpr* getIRegRexB ( Int sz, Prefix pfx, UInt lo3bits )
1163 static void putIRegRexB ( Int sz, Prefix pfx, UInt lo3bits, IRExpr* e )
1185 static UInt gregOfRexRM ( Prefix pfx, UChar mod_reg_rm )
1197 static UInt eregOfRexRM ( Prefix pfx, UChar mod_reg_rm )
1213 static UInt offsetIRegG ( Int sz, Prefix pfx, UChar mod_reg_rm )
1224 IRExpr* getIRegG ( Int sz, Prefix pfx, UChar mod_reg_rm )
1238 void putIRegG ( Int sz, Prefix pfx, UChar mod_reg_rm, IRExpr* e )
1248 HChar* nameIRegG ( Int sz, Prefix pfx, UChar mod_reg_rm )
1260 static UInt offsetIRegE ( Int sz, Prefix pfx, UChar mod_reg_rm )
1271 IRExpr* getIRegE ( Int sz, Prefix pfx, UChar mod_reg_rm )
1285 void putIRegE ( Int sz, Prefix pfx, UChar mod_reg_rm, IRExpr* e )
1295 HChar* nameIRegE ( Int sz, Prefix pfx, UChar mod_reg_rm )
2134 HChar* segRegTxt ( Prefix pfx )
2152 Prefix pfx, IRExpr* virtual )
2276 VexAbiInfo* vbi, Prefix pfx, Long delta,
2547 static UInt lengthAMode ( Prefix pfx, Long delta )
2655 Prefix pfx,
2771 Prefix pfx,
2904 Prefix pfx,
2950 Prefix pfx,
3031 Prefix pfx,
3135 Prefix pfx,
3245 Prefix pfx,
3519 Prefix pfx,
3710 Prefix pfx, Int sz, Long delta, Bool* decode_OK )
3874 Prefix pfx, Long delta, Bool* decode_OK )
3944 Prefix pfx, Int sz, Long delta,
4119 Int sz, HChar* name, Prefix pfx )
4226 Prefix pfx )
4265 Prefix pfx,
4308 Prefix pfx,
4826 VexAbiInfo* vbi, Prefix pfx, Long delta )
6450 Prefix pfx,
6600 Prefix pfx, Long delta,
6732 VexAbiInfo* vbi, Prefix pfx, Int sz, Long delta )
7168 Prefix pfx,
7353 Prefix pfx, Int sz, Long delta, BtOp op )
7511 Prefix pfx, Int sz, Long delta, Bool fwds )
7627 void codegen_xchg_rAX_Reg ( Prefix pfx, Int sz, UInt regLo3 )
7706 Prefix pfx,
7725 reg-reg: ignore any lock prefix, generate sequence based
7728 reg-mem, not locked: ignore any lock prefix, generate sequence
7813 Prefix pfx,
7866 Prefix pfx, Int sz, Long delta0 )
7879 reg-reg: ignore any lock prefix,
7882 reg-mem, not locked: ignore any lock prefix, generate 'naive'
8047 Prefix pfx, Long delta,
8084 Prefix pfx, Long delta,
8094 Prefix pfx, Long delta,
8104 Prefix pfx, Long delta,
8140 Prefix pfx, Long delta,
8177 Prefix pfx, Long delta,
8208 Prefix pfx, Long delta,
8252 Prefix pfx, Long delta,
8298 Prefix pfx, Long delta,
8385 Prefix pfx, Long delta,
8449 Prefix pfx, Long delta,
8525 ULong dis_SSE_shiftE_imm ( Prefix pfx,
8855 prefix. The following insns
9021 2 if an 0x66 prefix is seen and 8 if REX.W is 1. In case of
9026 Prefix pfx = PFX_EMPTY;
9155 /* We have a %fs prefix. Reject it if there's no evidence in 'vbi'
9170 leading F2 or F3. Check that any LOCK prefix is actually
16417 the address size prefix can have an effect. It changes the
16499 /* NOTE! this is the one place where a segment override prefix
17123 /* 24 July 06: has also been seen with a redundant REX prefix,
17222 //.. case 0xA4: /* MOVS, no REP prefix */
17227 //.. case 0xA6: /* CMPSb, no REP prefix */
17233 case 0xAC: /* LODS, no REP prefix */
17238 //.. case 0xAE: /* SCAS, no REP prefix */
17289 //.. /* REPNE prefix insn */
17430 prefix. Therefore, surround it with a IRStmt_MBE(Imbe_BusLock)
17432 used with an explicit LOCK prefix, we don't want to end up with
17964 prefix. Life is too short to bother with generating two
17965 different translations for the with/without-LOCK-prefix
18682 vpanic("disInstr_AMD64: inconsistency in LOCK prefix handling");