summaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2010-03-22 10:30:27 +0000
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2010-03-22 10:30:27 +0000
commit103d49ba7cd343f9d482c78b08ac06c645608549 (patch)
tree88de30066f07c0396150be6507131eea4da284c1 /gcc
parent787928ac935544d53239787c1179205d45c55eb6 (diff)
downloadgcc-103d49ba7cd343f9d482c78b08ac06c645608549.tar.gz
* varasm.c (make_decl_rtl_for_debug): Also clear
flag_mudflap for the duration of make_decl_rtl call. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@157621 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog3
-rw-r--r--gcc/varasm.c8
2 files changed, 9 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 2fa71a6f68c..4131a497af3 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,8 @@
2010-03-22 Jakub Jelinek <jakub@redhat.com>
+ * varasm.c (make_decl_rtl_for_debug): Also clear
+ flag_mudflap for the duration of make_decl_rtl call.
+
PR debug/43443
* var-tracking.c (add_cselib_value_chains): Remove ASM_OPERANDS
locs from preserved VALUEs.
diff --git a/gcc/varasm.c b/gcc/varasm.c
index 31007b8af86..424d704aa86 100644
--- a/gcc/varasm.c
+++ b/gcc/varasm.c
@@ -1484,7 +1484,7 @@ make_decl_rtl (tree decl)
rtx
make_decl_rtl_for_debug (tree decl)
{
- unsigned int save_aliasing_flag;
+ unsigned int save_aliasing_flag, save_mudflap_flag;
rtx rtl;
if (DECL_RTL_SET_P (decl))
@@ -1495,9 +1495,12 @@ make_decl_rtl_for_debug (tree decl)
we do not want to create alias sets that will throw the alias
numbers off in the comparison dumps. So... clearing
flag_strict_aliasing will keep new_alias_set() from creating a
- new set. */
+ new set. It is undesirable to register decl with mudflap
+ in this case as well. */
save_aliasing_flag = flag_strict_aliasing;
flag_strict_aliasing = 0;
+ save_mudflap_flag = flag_mudflap;
+ flag_mudflap = 0;
rtl = DECL_RTL (decl);
/* Reset DECL_RTL back, as various parts of the compiler expects
@@ -1505,6 +1508,7 @@ make_decl_rtl_for_debug (tree decl)
SET_DECL_RTL (decl, NULL);
flag_strict_aliasing = save_aliasing_flag;
+ flag_mudflap = save_mudflap_flag;
return rtl;
}