summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2013-12-20 16:32:21 +0000
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2013-12-20 16:32:21 +0000
commit32d19e092c9c707348cc209f1265cf552e719d6a (patch)
tree2fb5becd3701a9193980c22daa0377bb914cd102
parentc46598c18375a4e0b5655f19ef7dd040d69f2632 (diff)
downloadppe42-gcc-32d19e092c9c707348cc209f1265cf552e719d6a.tar.gz
ppe42-gcc-32d19e092c9c707348cc209f1265cf552e719d6a.zip
PR c++/59255
* g++.dg/tree-prof/pr59255.C: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206152 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/g++.dg/tree-prof/pr59255.C29
2 files changed, 34 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 95afd485006..73f0cb904a2 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2013-12-20 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/59255
+ * g++.dg/tree-prof/pr59255.C: New test.
+
2013-12-20 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* gcc.target/arm/neon-vceq_p64.c: New test.
diff --git a/gcc/testsuite/g++.dg/tree-prof/pr59255.C b/gcc/testsuite/g++.dg/tree-prof/pr59255.C
new file mode 100644
index 00000000000..eb2b51f7e25
--- /dev/null
+++ b/gcc/testsuite/g++.dg/tree-prof/pr59255.C
@@ -0,0 +1,29 @@
+// PR c++/59255
+// { dg-options "-O2 -std=c++11" }
+
+struct S
+{
+ __attribute__((noinline, noclone)) ~S () noexcept (true)
+ {
+ if (fn)
+ fn (1);
+ }
+ void (*fn) (int);
+};
+
+__attribute__((noinline, noclone)) void
+foo (int x)
+{
+ if (x != 1)
+ throw 1;
+}
+
+int
+main ()
+{
+ for (int i = 0; i < 100; i++)
+ {
+ S s;
+ s.fn = foo;
+ }
+}
OpenPOWER on IntegriCloud