Changeset View
Changeset View
Standalone View
Standalone View
llvm/trunk/test/CodeGen/Lanai/constant_multiply.ll
Show First 20 Lines • Show All 144 Lines • ▼ Show 20 Lines | |||||
} | } | ||||
define i32 @fm9(i32 inreg %a) #0 { | define i32 @fm9(i32 inreg %a) #0 { | ||||
; CHECK-LABEL: fm9: | ; CHECK-LABEL: fm9: | ||||
; CHECK: ! %bb.0: | ; CHECK: ! %bb.0: | ||||
; CHECK-NEXT: st %fp, [--%sp] | ; CHECK-NEXT: st %fp, [--%sp] | ||||
; CHECK-NEXT: add %sp, 0x8, %fp | ; CHECK-NEXT: add %sp, 0x8, %fp | ||||
; CHECK-NEXT: sub %sp, 0x8, %sp | ; CHECK-NEXT: sub %sp, 0x8, %sp | ||||
; CHECK-NEXT: sub %r0, %r6, %r3 | ; CHECK-NEXT: sh %r6, 0x3, %r3 | ||||
; CHECK-NEXT: sh %r6, 0x3, %r9 | ; CHECK-NEXT: add %r6, %r3, %r3 | ||||
; CHECK-NEXT: sub %r3, %r9, %rv | ; CHECK-NEXT: sub %r0, %r3, %rv | ||||
; CHECK-NEXT: ld -4[%fp], %pc ! return | ; CHECK-NEXT: ld -4[%fp], %pc ! return | ||||
; CHECK-NEXT: add %fp, 0x0, %sp | ; CHECK-NEXT: add %fp, 0x0, %sp | ||||
; CHECK-NEXT: ld -8[%fp], %fp | ; CHECK-NEXT: ld -8[%fp], %fp | ||||
%1 = mul nsw i32 %a, -9 | %1 = mul nsw i32 %a, -9 | ||||
ret i32 %1 | ret i32 %1 | ||||
} | } | ||||
define i32 @fm10(i32 inreg %a) #0 { | define i32 @fm10(i32 inreg %a) #0 { | ||||
; CHECK-LABEL: fm10: | ; CHECK-LABEL: fm10: | ||||
; CHECK: ! %bb.0: | ; CHECK: ! %bb.0: | ||||
; CHECK-NEXT: st %fp, [--%sp] | ; CHECK-NEXT: st %fp, [--%sp] | ||||
; CHECK-NEXT: add %sp, 0x8, %fp | ; CHECK-NEXT: add %sp, 0x8, %fp | ||||
; CHECK-NEXT: sub %sp, 0x8, %sp | ; CHECK-NEXT: sub %sp, 0x8, %sp | ||||
; CHECK-NEXT: sh %r6, 0x1, %r3 | ; CHECK-NEXT: sh %r6, 0x3, %r3 | ||||
; CHECK-NEXT: sub %r0, %r3, %r3 | ; CHECK-NEXT: sh %r6, 0x1, %r9 | ||||
; CHECK-NEXT: sh %r6, 0x3, %r9 | ; CHECK-NEXT: add %r9, %r3, %r3 | ||||
; CHECK-NEXT: sub %r3, %r9, %rv | ; CHECK-NEXT: sub %r0, %r3, %rv | ||||
; CHECK-NEXT: ld -4[%fp], %pc ! return | ; CHECK-NEXT: ld -4[%fp], %pc ! return | ||||
; CHECK-NEXT: add %fp, 0x0, %sp | ; CHECK-NEXT: add %fp, 0x0, %sp | ||||
; CHECK-NEXT: ld -8[%fp], %fp | ; CHECK-NEXT: ld -8[%fp], %fp | ||||
%1 = mul nsw i32 %a, -10 | %1 = mul nsw i32 %a, -10 | ||||
ret i32 %1 | ret i32 %1 | ||||
} | } | ||||
define i32 @h1(i32 inreg %a) #0 { | define i32 @h1(i32 inreg %a) #0 { | ||||
Show All 16 Lines |