Fixed some bugs in register stack pass.
[llvm/zpu.git] / test / CodeGen / X86 / 2009-09-19-earlyclobber.ll
blob4f44caea74c946067ba08d66c35ed0416bd7a66c
1 ; RUN: llc < %s | FileCheck %s
2 ; ModuleID = '4964.c'
3 ; PR 4964
4 ; Registers other than RAX, RCX are OK, but they must be different.
5 target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128"
6 target triple = "x86_64-apple-darwin10.0"
7         type { i64, i64 }               ; type %0
9 define i64 @flsst(i64 %find) nounwind ssp {
10 entry:
11 ; CHECK: FOO %rax %rcx
12         %asmtmp = tail call %0 asm sideeffect "FOO $0 $1 $2", "=r,=&r,rm,~{dirflag},~{fpsr},~{flags},~{cc}"(i64 %find) nounwind         ; <%0> [#uses=1]
13         %asmresult = extractvalue %0 %asmtmp, 0         ; <i64> [#uses=1]
14         ret i64 %asmresult