aboutsummaryrefslogtreecommitdiff
path: root/gcc/final.c
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>2002-02-08 14:20:16 -0800
committerRichard Henderson <rth@gcc.gnu.org>2002-02-08 14:20:16 -0800
commitfdf473ae1b7e9b775418aa69918641dd651d0150 (patch)
tree9c571efba5f72e86224f8701d8dd1487d6780ced /gcc/final.c
parent30d287947efab771a850c16a1fb60fc65b2ae148 (diff)
downloadgcc-fdf473ae1b7e9b775418aa69918641dd651d0150.zip
gcc-fdf473ae1b7e9b775418aa69918641dd651d0150.tar.gz
gcc-fdf473ae1b7e9b775418aa69918641dd651d0150.tar.bz2
expr.c (expand_expr): Mind EXPAND_INITIALIZER for truncation also.
* expr.c (expand_expr): Mind EXPAND_INITIALIZER for truncation also. * final.c (output_addr_const): Accept and discard SUBREG. * varasm.c (decode_addr_const): Don't abort on unknown expressions -- mark them unknown instead. (simplify_subtraction): Handle RTX_UNKNOWN. (initializer_constant_valid_p): Strip NOP_EXPRs that narrow the mode. * gcc.c-torture/compile/labels-3.c: New. From-SVN: r49622
Diffstat (limited to 'gcc/final.c')
-rw-r--r--gcc/final.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/final.c b/gcc/final.c
index 3fd93b4..5f8de30 100644
--- a/gcc/final.c
+++ b/gcc/final.c
@@ -3461,6 +3461,7 @@ output_addr_const (file, x)
case ZERO_EXTEND:
case SIGN_EXTEND:
+ case SUBREG:
output_addr_const (file, XEXP (x, 0));
break;