llvm/test/CodeGen/X86/pr7882.ll
Dale Johannesen 6cf64a631a Make fast scheduler handle asm clobbers correctly.
PR 7882.  Follows suggestion by Amaury Pouly, thanks.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111306 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-17 22:17:24 +00:00

18 lines
485 B
LLVM

; RUN: llc < %s -march=x86 -mtriple=i686-apple-darwin -pre-RA-sched=fast \
; RUN: | FileCheck %s
; make sure scheduler honors the flags clobber. PR 7882.
define i32 @main(i32 %argc, i8** %argv) nounwind
{
entry:
; CHECK: InlineAsm End
; CHECK: cmpl
%res = icmp slt i32 1, %argc
%tmp = call i32 asm sideeffect alignstack
"push $$0
popf
mov $$13, $0", "=r,r,~{memory},~{flags}" (i1 %res)
%ret = select i1 %res, i32 %tmp, i32 42
ret i32 %ret
}