brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.2 KiB · dd6e70f Raw
61 lines · plain
1; RUN: llc -mtriple=lanai < %s | FileCheck %s2 3; Test the in place lowering of mul i32.4 5define i32 @f6(i32 inreg %a) #0 {6entry:7  %mul = mul nsw i32 %a, 68  ret i32 %mul9}10; CHECK: sh %r6, 0x1, %r{{[0-9]+}}11; CHECK: sh %r6, 0x3, %r{{[0-9]+}}12; CHECK: sub %r{{[0-9]+}}, %r{{[0-9]+}}, %rv13 14define i32 @f7(i32 inreg %a) #0 {15entry:16  %mul = mul nsw i32 %a, 717  ret i32 %mul18}19; CHECK: sh %r6, 0x3, %r{{[0-9]+}}20; CHECK: sub %r{{[0-9]+}}, %r6, %rv21 22define i32 @f8(i32 inreg %a) #0 {23entry:24  %mul = shl nsw i32 %a, 325  ret i32 %mul26}27; CHECK: sh %r6, 0x3, %rv28 29define i32 @fm6(i32 inreg %a) #0 {30entry:31  %mul = mul nsw i32 %a, -632  ret i32 %mul33}34; CHECK: sh %r6, 0x3, %r{{[0-9]+}}35; CHECK: sh %r6, 0x1, %r{{[0-9]+}}36; CHECK: sub %r{{[0-9]+}}, %r{{[0-9]+}}, %rv37 38define i32 @fm7(i32 inreg %a) #0 {39entry:40  %mul = mul nsw i32 %a, -741  ret i32 %mul42}43; CHECK: sh %r6, 0x3, %r{{[0-9]+}}44; CHECK: sub %r6, %r{{[0-9]+}}, %rv45 46define i32 @fm8(i32 inreg %a) #0 {47entry:48  %mul = mul nsw i32 %a, -849  ret i32 %mul50}51; CHECK: sh %r6, 0x3, %r{{[0-9]+}}52; CHECK: sub %r{{[0-9]+}}, %r{{[0-9]+}}, %rv53 54define i32 @h1(i32 inreg %a) #0 {55entry:56  %mul = mul i32 %a, -143165576557  ret i32 %mul58}59; CHECK: h160; CHECK: mulsi361