diff options
author | Mark Mitchell <mmitchell@usa.net> | 1998-04-01 13:45:40 +0000 |
---|---|---|
committer | Mark Mitchell <mmitchel@gcc.gnu.org> | 1998-04-01 13:45:40 +0000 |
commit | c651e1e08571fdf59da9289e9fd97c0be84ec6b4 (patch) | |
tree | d3f7291b661afbc8eb2c33949cf6f107a80050a8 /gcc | |
parent | 3a598fbeb416142a7b9aa9a332eab71c1828d36b (diff) | |
download | gcc-c651e1e08571fdf59da9289e9fd97c0be84ec6b4.zip gcc-c651e1e08571fdf59da9289e9fd97c0be84ec6b4.tar.gz gcc-c651e1e08571fdf59da9289e9fd97c0be84ec6b4.tar.bz2 |
varasm.c (make_decl_rtl): Update the DECL_ASSEMBLER_NAME for a entity in a local scope.
* varasm.c (make_decl_rtl): Update the DECL_ASSEMBLER_NAME for a
entity in a local scope.
* fold-const.c (fold): Call truthvalue_conversion for values which
are folded to boolean type.
From-SVN: r18929
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 8 | ||||
-rw-r--r-- | gcc/fold-const.c | 2 | ||||
-rw-r--r-- | gcc/varasm.c | 6 |
3 files changed, 16 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 4ed42ee..2ab4fa9 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +1998-04-01 Mark Mitchell <mmitchell@usa.net> + + * varasm.c (make_decl_rtl): Update the DECL_ASSEMBLER_NAME for a + entity in a local scope. + + * fold-const.c (fold): Call truthvalue_conversion for values which + are folded to boolean type. + Wed Apr 1 06:09:53 1998 Jeffrey A Law (law@cygnus.com) * 1750a.md, arm.c, clipper.c, clipper.md: Use GEN_INT consistently. diff --git a/gcc/fold-const.c b/gcc/fold-const.c index 4fcd744..537e2b2 100644 --- a/gcc/fold-const.c +++ b/gcc/fold-const.c @@ -5636,6 +5636,8 @@ fold (expr) TREE_INT_CST_LOW (t1) ^= 1; TREE_TYPE (t1) = type; + if (TREE_CODE (type) == BOOLEAN_TYPE) + return truthvalue_conversion (t1); return t1; case COND_EXPR: diff --git a/gcc/varasm.c b/gcc/varasm.c index 42dca29..634753e 100644 --- a/gcc/varasm.c +++ b/gcc/varasm.c @@ -734,6 +734,12 @@ make_decl_rtl (decl, asmspec, top_level) ASM_FORMAT_PRIVATE_NAME (label, name, var_labelno); name = obstack_copy0 (saveable_obstack, label, strlen (label)); var_labelno++; + + /* We've changed the name by which this entity is + known. In order that we can generate + correct references to it, we update its + DECL_ASSEMBLER_NAME. */ + DECL_ASSEMBLER_NAME (decl) = get_identifier (name); } if (name == 0) |