diff options
author | mmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4> | 1998-04-01 13:45:40 +0000 |
---|---|---|
committer | mmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4> | 1998-04-01 13:45:40 +0000 |
commit | ea56eec5441c065c5003d416677a3d9f12719712 (patch) | |
tree | d3f7291b661afbc8eb2c33949cf6f107a80050a8 | |
parent | cc51d4989fbd3a1ea3629acf0754c810134263f9 (diff) | |
download | gcc-ea56eec5441c065c5003d416677a3d9f12719712.tar.gz |
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@18929 138bc75d-0d04-0410-961f-82ee72b054a4
-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 4ed42ee4ba6..2ab4fa966e6 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 4fcd7448303..537e2b201f4 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 42dca296f9c..634753ea6f2 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) |