diff options
Diffstat (limited to 'test/CodeGen/X86/hoist-common.ll')
-rw-r--r-- | test/CodeGen/X86/hoist-common.ll | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/test/CodeGen/X86/hoist-common.ll b/test/CodeGen/X86/hoist-common.ll index 72e17c065b63b..01d1b8c034e34 100644 --- a/test/CodeGen/X86/hoist-common.ll +++ b/test/CodeGen/X86/hoist-common.ll @@ -1,4 +1,14 @@ ; RUN: llc < %s -mtriple=x86_64-apple-macosx | FileCheck %s +; This is supposed to be testing BranchFolding's common +; code hoisting logic, but has been erroneously passing due +; to there being a redundant xorl in the entry block +; and no common code to hoist. +; However, now that MachineSink sinks the redundant xor +; hoist-common looks at it and rejects it for hoisting, +; which causes this test to fail. +; Since it seems this test is broken, marking XFAIL for now +; until someone decides to remove it or fix what it tests. +; XFAIL: * ; Common "xorb al, al" instruction in the two successor blocks should be ; moved to the entry block above the test + je. @@ -7,8 +17,8 @@ define zeroext i1 @t(i32 %c) nounwind ssp { entry: -; CHECK: t: -; CHECK: xorb %al, %al +; CHECK-LABEL: t: +; CHECK: xorl %eax, %eax ; CHECK: test ; CHECK: je %tobool = icmp eq i32 %c, 0 |