@@ -525,8 +525,6 @@ class TranslatedX86Movdqa extends TranslatedCopy, TTranslatedX86Movdqa {
525525 TranslatedX86Movdqa ( ) { this = TTranslatedX86Movdqa ( instr ) }
526526}
527527
528- private Variable getEspVariable ( ) { result = getTranslatedVariableReal ( any ( Raw:: RspRegister r ) ) }
529-
530528class TranslatedX86Push extends TranslatedX86Instruction , TTranslatedX86Push {
531529 override Raw:: X86Push instr ;
532530
@@ -545,7 +543,7 @@ class TranslatedX86Push extends TranslatedX86Instruction, TTranslatedX86Push {
545543 // esp = esp - x
546544 tag = PushSubTag ( ) and
547545 opcode instanceof Opcode:: Sub and
548- v .asSome ( ) = getEspVariable ( )
546+ v .asSome ( ) = getStackPointer ( )
549547 or
550548 // store [esp], y
551549 tag = PushStoreTag ( ) and
@@ -564,7 +562,7 @@ class TranslatedX86Push extends TranslatedX86Instruction, TTranslatedX86Push {
564562 tag = PushSubTag ( ) and
565563 (
566564 operandTag = LeftTag ( ) and
567- result = getEspVariable ( )
565+ result = getStackPointer ( )
568566 or
569567 operandTag = RightTag ( ) and
570568 result = this .getInstruction ( PushSubConstTag ( ) ) .getResultVariable ( )
@@ -576,7 +574,7 @@ class TranslatedX86Push extends TranslatedX86Instruction, TTranslatedX86Push {
576574 result = this .getTranslatedOperand ( ) .getResultVariable ( )
577575 or
578576 operandTag = StoreAddressTag ( ) and
579- result = getEspVariable ( )
577+ result = getStackPointer ( )
580578 )
581579 }
582580
@@ -969,7 +967,7 @@ class TranslatedX86Pop extends TranslatedX86Instruction, TTranslatedX86Pop {
969967 // esp = esp + x
970968 tag = PopAddTag ( ) and
971969 opcode instanceof Opcode:: Add and
972- v .asSome ( ) = getEspVariable ( )
970+ v .asSome ( ) = getStackPointer ( )
973971 }
974972
975973 override int getConstantValue ( InstructionTag tag ) {
@@ -982,12 +980,12 @@ class TranslatedX86Pop extends TranslatedX86Instruction, TTranslatedX86Pop {
982980 override Variable getVariableOperand ( InstructionTag tag , OperandTag operandTag ) {
983981 tag = PopLoadTag ( ) and
984982 operandTag = UnaryTag ( ) and
985- result = getEspVariable ( )
983+ result = getStackPointer ( )
986984 or
987985 tag = PopAddTag ( ) and
988986 (
989987 operandTag = LeftTag ( ) and
990- result = getEspVariable ( )
988+ result = getStackPointer ( )
991989 or
992990 operandTag = RightTag ( ) and
993991 result = this .getInstruction ( PopAddConstTag ( ) ) .getResultVariable ( )
0 commit comments