23 lines · c
1// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py2// REQUIRES: powerpc-registered-target3// RUN: %clang_cc1 -triple powerpc64-unknown-linux-gnu \4// RUN: -emit-llvm %s -o - -target-cpu pwr7 | FileCheck %s5// RUN: %clang_cc1 -triple powerpc64le-unknown-linux-gnu \6// RUN: -emit-llvm %s -o - -target-cpu pwr8 | FileCheck %s7 8// The argument expression must not be emitted multiple times9 10// CHECK-LABEL: @test_fric(11// CHECK-NEXT: entry:12// CHECK-NEXT: [[D:%.*]] = alloca double, align 813// CHECK-NEXT: [[TMP:%.*]] = alloca double, align 814// CHECK-NEXT: [[TMP0:%.*]] = load double, ptr [[D]], align 815// CHECK-NEXT: store double [[TMP0]], ptr [[TMP]], align 816// CHECK-NEXT: [[TMP1:%.*]] = load double, ptr [[TMP]], align 817// CHECK-NEXT: [[TMP2:%.*]] = call double @llvm.rint.f64(double [[TMP1]])18// CHECK-NEXT: ret void19//20void test_fric() {21 __fric(({double d; d;}));22}23