brintos

brintos / llvm-project-archived public Read only

0
0
Text · 797 B · 3e1c315 Raw
35 lines · plain
1; RUN: opt -mtriple=amdgcn-- -O1 -S -inline-threshold=1 -amdgpu-early-inline-all %s | FileCheck %s2 3@c_alias = dso_local alias i32 (i32), ptr @callee4 5define dso_local i32 @callee(i32 %x) {6entry:7  %mul1 = mul i32 %x, %x8  %mul2 = mul i32 %mul1, %x9  %mul3 = mul i32 %mul1, %mul210  %mul4 = mul i32 %mul3, %mul211  %mul5 = mul i32 %mul4, %mul312  ret i32 %mul513}14 15; CHECK-LABEL: @caller16; CHECK: mul i3217; CHECK-NOT: call i3218 19define amdgpu_kernel void @caller(i32 %x) {20entry:21  %res = call i32 @callee(i32 %x)22  store volatile i32 %res, ptr addrspace(1) poison23  ret void24}25 26; CHECK-LABEL: @alias_caller(27; CHECK-NOT: call28; CHECK: {{^[}]}}29define amdgpu_kernel void @alias_caller(i32 %x) {30entry:31  %res = call i32 @c_alias(i32 %x)32  store volatile i32 %res, ptr addrspace(1) poison33  ret void34}35