2014-11-12 Kai Tietz <ktietz@redhat.com>
authorktietz <ktietz@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 12 Nov 2014 20:04:50 +0000 (20:04 +0000)
committerktietz <ktietz@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 12 Nov 2014 20:04:50 +0000 (20:04 +0000)
        * sdbout.c (sdbout_symbol): Eliminate register only
        if decl isn't a global variable.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@217443 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/sdbout.c

index 2eb6f35..8b98649 100644 (file)
@@ -1,3 +1,8 @@
+2014-11-12  Kai Tietz  <ktietz@redhat.com>
+
+       * sdbout.c (sdbout_symbol): Eliminate register only
+       if decl isn't a global variable.
+
 2014-11-12  Alan Lawrence  <alan.lawrence@arm.com>
 
        * config/aarch64/aarch64.c (aarch64_simd_lane_bounds): Display indices.
index 7b6f457..4cea780 100644 (file)
@@ -739,13 +739,16 @@ sdbout_symbol (tree decl, int local)
       if (!DECL_RTL_SET_P (decl))
        return;
 
-      SET_DECL_RTL (decl,
-                   eliminate_regs (DECL_RTL (decl), VOIDmode, NULL_RTX));
+      value = DECL_RTL (decl);
+
+      if (!is_global_var (decl))
+       value = eliminate_regs (value, VOIDmode, NULL_RTX);
+
+      SET_DECL_RTL (decl, value);
 #ifdef LEAF_REG_REMAP
       if (crtl->uses_only_leaf_regs)
-       leaf_renumber_regs_insn (DECL_RTL (decl));
+       leaf_renumber_regs_insn (value);
 #endif
-      value = DECL_RTL (decl);
 
       /* Don't mention a variable at all
         if it was completely optimized into nothingness.