aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorPaul Brook <paul@codesourcery.com>2004-09-21 23:40:21 +0000
committerPaul Brook <pbrook@gcc.gnu.org>2004-09-21 23:40:21 +0000
commita13fd90532cc877a4d484348478f9f1300872ad8 (patch)
tree7dbc40a3aed178c7bc58788ce9f6cb9b210bffcc /gcc
parent3a3d02256176aaf793c7ef0f531d085c9e49721a (diff)
downloadgcc-a13fd90532cc877a4d484348478f9f1300872ad8.zip
gcc-a13fd90532cc877a4d484348478f9f1300872ad8.tar.gz
gcc-a13fd90532cc877a4d484348478f9f1300872ad8.tar.bz2
varasm.c (default_assemble_integer): Return false for values wider than the target word size.
* varasm.c (default_assemble_integer): Return false for values wider than the target word size. Works around GAS bug. From-SVN: r87827
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/varasm.c3
2 files changed, 8 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index fd4e652..fd9c3e7 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2004-09-21 Paul Brook <paul@codesourcery.com>
+
+ * varasm.c (default_assemble_integer): Return false for values wider
+ than the target word size. Works around GAS bug.
+
2004-09-21 Zack Weinberg <zack@codesourcery.com>
* reg-notes.def (REG_DEP_TRUE): New entry, place first so it
diff --git a/gcc/varasm.c b/gcc/varasm.c
index 5bb96c6..8a607f5 100644
--- a/gcc/varasm.c
+++ b/gcc/varasm.c
@@ -2008,6 +2008,9 @@ default_assemble_integer (rtx x ATTRIBUTE_UNUSED,
int aligned_p ATTRIBUTE_UNUSED)
{
const char *op = integer_asm_op (size, aligned_p);
+ /* Avoid GAS bugs for values > word size. */
+ if (size > UNITS_PER_WORD)
+ return false;
return op && (assemble_integer_with_op (op, x), true);
}