2009-09-09 01:54:48 +02:00
|
|
|
; RUN: llc < %s -mtriple=i386-apple-darwin
|
2009-04-14 02:32:25 +02:00
|
|
|
; rdar://6781755
|
|
|
|
; PR3934
|
|
|
|
|
2011-06-19 02:03:46 +02:00
|
|
|
%0 = type { i32, i32 } ; type %0
|
2009-04-14 02:32:25 +02:00
|
|
|
|
|
|
|
define void @bn_sqr_comba8(i32* nocapture %r, i32* %a) nounwind {
|
|
|
|
entry:
|
|
|
|
%asmtmp23 = tail call %0 asm "mulq $3", "={ax},={dx},{ax},*m,~{dirflag},~{fpsr},~{flags},~{cc}"(i32 0, i32* %a) nounwind ; <%0> [#uses=1]
|
|
|
|
%asmresult25 = extractvalue %0 %asmtmp23, 1 ; <i32> [#uses=1]
|
|
|
|
%asmtmp26 = tail call %0 asm "addq $0,$0; adcq $2,$1", "={dx},=r,imr,0,1,~{dirflag},~{fpsr},~{flags},~{cc}"(i32 0, i32 %asmresult25, i32 0) nounwind ; <%0> [#uses=1]
|
|
|
|
%asmresult27 = extractvalue %0 %asmtmp26, 0 ; <i32> [#uses=1]
|
|
|
|
%asmtmp29 = tail call %0 asm "addq $0,$0; adcq $2,$1", "={ax},={dx},imr,0,1,~{dirflag},~{fpsr},~{flags},~{cc}"(i32 0, i32 0, i32 %asmresult27) nounwind ; <%0> [#uses=0]
|
|
|
|
ret void
|
|
|
|
}
|