https://bugs.kde.org/show_bug.cgi?id=381713

            Bug ID: 381713
           Summary: optimize CmpNEx(a, 0) as CmpNEZx(a) in VEX IR
           Product: valgrind
           Version: 3.14 SVN
          Platform: Compiled Sources
                OS: Linux
            Status: UNCONFIRMED
          Severity: minor
          Priority: NOR
         Component: vex
          Assignee: jsew...@acm.org
          Reporter: iv...@ivosh.net
  Target Milestone: ---

VEX IR optimizer should optimize CmpNEx(a, 0) as CmpNEZx(a).

CmpNEx(a, 0) is typically produced by VEX frontends for emulation warnings.
For example in guest_x86_toIR.c:

4110                 /* Finally, if an emulation warning was reported,
4111                    side-exit to the next insn, reporting the warning,
4112                    so that Valgrind's dispatcher sees the warning. */
4113                 stmt(
4114                    IRStmt_Exit(
4115                       binop(Iop_CmpNE32, mkexpr(ew), mkU32(0)),
4116                       Ijk_EmWarn,
4117                       IRConst_U32( ((Addr32)guest_EIP_bbstart)+delta),
4118                       OFFB_EIP
4119                    )
4120                 );

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to