aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2016-03-04 23:11:41 +0100
committerJakub Jelinek <jakub@gcc.gnu.org>2016-03-04 23:11:41 +0100
commit411d61c4af0a07a0f86b8fefabe568f519932d4e (patch)
tree0ffa8d937e276639a4f9c73bb3116d58c03dff03 /gcc
parent0c8825de94f416f4e76720f769f26e21c80d328c (diff)
downloadgcc-411d61c4af0a07a0f86b8fefabe568f519932d4e.zip
gcc-411d61c4af0a07a0f86b8fefabe568f519932d4e.tar.gz
gcc-411d61c4af0a07a0f86b8fefabe568f519932d4e.tar.bz2
decl.c (start_preparsed_function): Don't emit start clobber at the start of constructor clones.
* decl.c (start_preparsed_function): Don't emit start clobber at the start of constructor clones. From-SVN: r233985
Diffstat (limited to 'gcc')
-rw-r--r--gcc/cp/ChangeLog3
-rw-r--r--gcc/cp/decl.c1
2 files changed, 4 insertions, 0 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 1bfb146..5951567 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,5 +1,8 @@
2016-03-04 Jakub Jelinek <jakub@redhat.com>
+ * decl.c (start_preparsed_function): Don't emit start clobber at the
+ start of constructor clones.
+
PR c++/70035
* cp-tree.h (cp_ubsan_maybe_initialize_vtbl_ptrs): New prototype.
* decl.c (start_preparsed_function): Call
diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c
index 0edf166..8504ab6 100644
--- a/gcc/cp/decl.c
+++ b/gcc/cp/decl.c
@@ -14120,6 +14120,7 @@ start_preparsed_function (tree decl1, tree attrs, int flags)
if (!processing_template_decl
&& (flag_lifetime_dse > 1)
&& DECL_CONSTRUCTOR_P (decl1)
+ && !DECL_CLONED_FUNCTION_P (decl1)
/* We can't clobber safely for an implicitly-defined default constructor
because part of the initialization might happen before we enter the
constructor, via AGGR_INIT_ZERO_FIRST (c++/68006). */