Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / clang / test / utils / update_cc_test_checks / Inputs / resolve-tmp-conflict.cpp.expected
blobae510f9080f03180b3efdd516c25ed4cbf74b840
1 // NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py UTC_ARGS: --function-signature --prefix-filecheck-ir-name _
2 // RUN: %clang_cc1 -std=c++11 -triple x86_64-unknown-linux-gnu -emit-llvm %s -o - | FileCheck %s
4 // CHECK-LABEL: define {{[^@]+}}@_Z3fooi
5 // CHECK-SAME: (i32 noundef [[A:%.*]]) #[[ATTR0:[0-9]+]] {
6 // CHECK-NEXT:  entry:
7 // CHECK-NEXT:    [[A_ADDR:%.*]] = alloca i32, align 4
8 // CHECK-NEXT:    [[_TMP0:%.*]] = alloca ptr, align 8
9 // CHECK-NEXT:    [[_TMP1:%.*]] = alloca ptr, align 8
10 // CHECK-NEXT:    [[REF_TMP:%.*]] = alloca i32, align 4
11 // CHECK-NEXT:    store i32 [[A]], ptr [[A_ADDR]], align 4
12 // CHECK-NEXT:    store ptr [[A_ADDR]], ptr [[_TMP0]], align 8
13 // CHECK-NEXT:    store i32 1, ptr [[REF_TMP]], align 4
14 // CHECK-NEXT:    store ptr [[REF_TMP]], ptr [[_TMP1]], align 8
15 // CHECK-NEXT:    [[TMP0:%.*]] = load i32, ptr [[A_ADDR]], align 4
16 // CHECK-NEXT:    [[TMP1:%.*]] = load ptr, ptr [[_TMP1]], align 8
17 // CHECK-NEXT:    store i32 [[TMP0]], ptr [[TMP1]], align 4
18 // CHECK-NEXT:    ret void
20 void foo(int a) {
21   int &tmp0 = a;
22   int &&tmp1 = 1;
23   tmp1 = a;
24   return;