OSDN Git Service

Fix conditional jump over jmp (X86/X86-64/ARM32)
authorMark Mendell <mark.p.mendell@intel.com>
Fri, 22 May 2015 20:58:19 +0000 (16:58 -0400)
committerMark Mendell <mark.p.mendell@intel.com>
Thu, 5 Nov 2015 15:44:24 +0000 (10:44 -0500)
commitb8b97695d178337736b61609220613b92f344d45
tree8b412373d1f21cac78168e284e36977a7fab0875
parentb24301b06b31b463f7e92ebc9a8f75839e54b746
Fix conditional jump over jmp (X86/X86-64/ARM32)

Optimize the code generation for 'if' statements to jump to the
'false' block if the next block to be generated is the 'true' block.

Add an X86-64 test for this case.

Note that ARM64 & MIPS64 have not been updated.

Change-Id: Iebb1352feb9d3bd0142d8b0621a2e3069a708ea7
Signed-off-by: Mark Mendell <mark.p.mendell@intel.com>
compiler/optimizing/code_generator_arm.cc
compiler/optimizing/code_generator_utils.cc
compiler/optimizing/code_generator_utils.h
compiler/optimizing/code_generator_x86.cc
compiler/optimizing/code_generator_x86_64.cc
test/537-checker-jump-over-jump/expected.txt [new file with mode: 0644]
test/537-checker-jump-over-jump/info.txt [new file with mode: 0644]
test/537-checker-jump-over-jump/src/Main.java [new file with mode: 0644]