brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1013 B · 7ab2aba Raw
33 lines · plain
1; This test checks if two similar functions, @0 and @1, are not merged as they are unnamed.2 3; RUN: opt -mtriple=arm64-apple-darwin -S --passes=global-merge-func %s | FileCheck %s4; RUN: llc -mtriple=arm64-apple-darwin -enable-global-merge-func=true < %s | FileCheck %s5 6; CHECK-NOT: .Tgm7 8@g = external local_unnamed_addr global [0 x i32], align 49@g1 = external global i32, align 410@g2 = external global i32, align 411 12define i32 @0(i32 %a) {13entry:14  %idxprom = sext i32 %a to i6415  %arrayidx = getelementptr inbounds [0 x i32], ptr @g, i64 0, i64 %idxprom16  %0 = load i32, ptr %arrayidx, align 417  %1 = load volatile i32, ptr @g1, align 418  %mul = mul nsw i32 %1, %019  %add = add nsw i32 %mul, 120  ret i32 %add21}22 23define i32 @1(i32 %a) {24entry:25  %idxprom = sext i32 %a to i6426  %arrayidx = getelementptr inbounds [0 x i32], ptr @g, i64 0, i64 %idxprom27  %0 = load i32, ptr %arrayidx, align 428  %1 = load volatile i32, ptr @g2, align 429  %mul = mul nsw i32 %1, %030  %add = add nsw i32 %mul, 131  ret i32 %add32}33