summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGenCXX/discard-name-values.cpp
diff options
context:
space:
mode:
authorEric Fiselier <eric@efcs.ca>2018-02-02 19:58:34 +0000
committerEric Fiselier <eric@efcs.ca>2018-02-02 19:58:34 +0000
commit88df555d051e933b619e3679dcfde3756e61cc1f (patch)
tree15a70d02eafbbe4806808445beeb2d83adc73e4a /clang/test/CodeGenCXX/discard-name-values.cpp
parent66ce45150f2a4df0d7012b9c630862ad1db4d0cb (diff)
downloadbcm5719-llvm-88df555d051e933b619e3679dcfde3756e61cc1f.tar.gz
bcm5719-llvm-88df555d051e933b619e3679dcfde3756e61cc1f.zip
Emit label names according to -discard-value-names.
Summary: Previously, Clang only emitted label names in assert builds. However there is a CC1 option -discard-value-names that should have been used to control emission instead. This patch removes the NDEBUG preprocessor block and instead allows LLVM to handle removing the names in accordance with the option. Reviewers: erichkeane, aaron.ballman, majnemer Reviewed By: aaron.ballman Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D42829 llvm-svn: 324127
Diffstat (limited to 'clang/test/CodeGenCXX/discard-name-values.cpp')
-rw-r--r--clang/test/CodeGenCXX/discard-name-values.cpp33
1 files changed, 26 insertions, 7 deletions
diff --git a/clang/test/CodeGenCXX/discard-name-values.cpp b/clang/test/CodeGenCXX/discard-name-values.cpp
index 49cb7d2fc05..d4d7527c285 100644
--- a/clang/test/CodeGenCXX/discard-name-values.cpp
+++ b/clang/test/CodeGenCXX/discard-name-values.cpp
@@ -1,10 +1,29 @@
-// RUN: %clang_cc1 -emit-llvm -triple=armv7-apple-darwin -emit-llvm -std=c++11 %s -o - -O1 | FileCheck %s
-// RUN: %clang_cc1 -emit-llvm -triple=armv7-apple-darwin -emit-llvm -std=c++11 %s -o - -O1 -discard-value-names | FileCheck %s --check-prefix=DISCARDVALUE
+// RUN: %clang_cc1 -emit-llvm -triple=armv7-apple-darwin -std=c++11 %s -o - -O1 \
+// RUN: | FileCheck %s
+// RUN: %clang_cc1 -emit-llvm -triple=armv7-apple-darwin -std=c++11 %s -o - -O1 \
+// RUN: -discard-value-names | FileCheck %s --check-prefix=DISCARDVALUE
-int foo(int bar) {
- return bar;
-}
+extern "C" void branch();
+
+bool test(bool pred) {
+ // DISCARDVALUE: br i1 %0, label %2, label %3
+ // CHECK: br i1 %pred, label %if.then, label %if.end
+
+ if (pred) {
+ // DISCARDVALUE: ; <label>:2:
+ // DISCARDVALUE-NEXT: tail call void @branch()
+ // DISCARDVALUE-NEXT: br label %3
-// CHECK: ret i32 %bar
-// DISCARDVALUE: ret i32 %0
+ // CHECK: if.then:
+ // CHECK-NEXT: tail call void @branch()
+ // CHECK-NEXT: br label %if.end
+ branch();
+ }
+ // DISCARDVALUE: ; <label>:3:
+ // DISCARDVALUE-NEXT: ret i1 %0
+
+ // CHECK: if.end:
+ // CHECK-NEXT: ret i1 %pred
+ return pred;
+}
OpenPOWER on IntegriCloud