summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGenCXX
diff options
context:
space:
mode:
authorLarisse Voufo <lvoufo@google.com>2015-02-15 08:16:37 +0000
committerLarisse Voufo <lvoufo@google.com>2015-02-15 08:16:37 +0000
commit0c691d029a2a28b5337325e0c49c90ce9e8bfba6 (patch)
tree1de98955d0300d01ae32ebf82ff93fbce1d632ae /clang/test/CodeGenCXX
parent6f5a859633867af4040bb7d9fe3d647f1c074b45 (diff)
downloadbcm5719-llvm-0c691d029a2a28b5337325e0c49c90ce9e8bfba6.tar.gz
bcm5719-llvm-0c691d029a2a28b5337325e0c49c90ce9e8bfba6.zip
More on fixing sized deallocation implementation logic: Fix PR21754.
llvm-svn: 229291
Diffstat (limited to 'clang/test/CodeGenCXX')
-rw-r--r--clang/test/CodeGenCXX/pr21754.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/clang/test/CodeGenCXX/pr21754.cpp b/clang/test/CodeGenCXX/pr21754.cpp
new file mode 100644
index 00000000000..c9fa03386fd
--- /dev/null
+++ b/clang/test/CodeGenCXX/pr21754.cpp
@@ -0,0 +1,13 @@
+// RUN: %clang -cc1 -emit-llvm -triple x86_64-unknown-unknown -std=c++1y %s -o -
+// RUN: %clang -cc1 -emit-llvm -triple x86_64-unknown-unknown -std=c++1y %s -fdef-sized-delete -o -
+// RUN: %clang -cc1 -emit-llvm -triple x86_64-unknown-unknown -std=c++11 -fsized-deallocation %s -o -
+// RUN: %clang -cc1 -emit-llvm -triple x86_64-unknown-unknown -std=c++11 -fsized-deallocation -fdef-sized-delete %s -o -
+// RUN: %clang -cc1 -emit-llvm -triple x86_64-unknown-unknown -std=c++11 %s -o -
+
+// CHECK-UNSIZED-NOT: _ZdlPvm
+// CHECK-UNSIZED-NOT: _ZdaPvm
+
+void operator delete(void*, unsigned long) throw() __attribute__((alias("foo")));
+extern "C" void foo(void*, unsigned long) {}
+
+// CHECK-DAG: @_ZdlPvm = alias void (i8*, i64)* @my_delete
OpenPOWER on IntegriCloud