summaryrefslogtreecommitdiff
path: root/gcc/sdbout.c
diff options
context:
space:
mode:
authorrms <rms@138bc75d-0d04-0410-961f-82ee72b054a4>1993-11-16 10:22:29 +0000
committerrms <rms@138bc75d-0d04-0410-961f-82ee72b054a4>1993-11-16 10:22:29 +0000
commite8c015db4e5a25df242a12e0837e936da34ee8a9 (patch)
tree04248a811cf452acf2edd6aa7fee3b3f227b825c /gcc/sdbout.c
parent5a0824bcffa837871898b341fc9976f6ec7b7808 (diff)
downloadgcc-e8c015db4e5a25df242a12e0837e936da34ee8a9.tar.gz
(sdbout_symbol): If non-static var has static-style RTL,
don't output anything for it. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@6106 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/sdbout.c')
-rw-r--r--gcc/sdbout.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/sdbout.c b/gcc/sdbout.c
index 25b800916b4..ac7c0f14119 100644
--- a/gcc/sdbout.c
+++ b/gcc/sdbout.c
@@ -756,6 +756,12 @@ sdbout_symbol (decl, local)
alter_subreg (DECL_RTL (decl));
value = DECL_RTL (decl);
}
+ /* Don't output anything if an auto variable
+ gets RTL that is static.
+ GAS version 2.2 can't handle such output. */
+ else if (GET_CODE (value) == MEM && CONSTANT_P (XEXP (value, 0))
+ && ! TREE_STATIC (decl))
+ return;
/* Emit any structure, union, or enum type that has not been output.
This occurs for tag-less structs (et al) used to declare variables