Home | History | Annotate | Download | only in X86
      1 ; RUN: llc < %s -march=x86
      2 
      3 ; ModuleID = 'a.bc'
      4 
      5 define i32 @foo(i32 %A, i32 %B) {
      6 entry:
      7 	%A_addr = alloca i32		; <i32*> [#uses=2]
      8 	%B_addr = alloca i32		; <i32*> [#uses=1]
      9 	%retval = alloca i32, align 4		; <i32*> [#uses=2]
     10 	%tmp = alloca i32, align 4		; <i32*> [#uses=2]
     11 	%ret = alloca i32, align 4		; <i32*> [#uses=2]
     12 	store i32 %A, i32* %A_addr
     13 	store i32 %B, i32* %B_addr
     14 	%tmp1 = load i32, i32* %A_addr		; <i32> [#uses=1]
     15 	%tmp2 = call i32 asm "roll $1,$0", "=r,I,0,~{dirflag},~{fpsr},~{flags},~{cc}"( i32 7, i32 %tmp1 )		; <i32> [#uses=1]
     16 	store i32 %tmp2, i32* %ret
     17 	%tmp3 = load i32, i32* %ret		; <i32> [#uses=1]
     18 	store i32 %tmp3, i32* %tmp
     19 	%tmp4 = load i32, i32* %tmp		; <i32> [#uses=1]
     20 	store i32 %tmp4, i32* %retval
     21 	br label %return
     22 
     23 return:		; preds = %entry
     24 	%retval5 = load i32, i32* %retval		; <i32> [#uses=1]
     25 	ret i32 %retval5
     26 }
     27