diff options
| author | pbrook <pbrook@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-11-19 13:12:38 +0000 |
|---|---|---|
| committer | pbrook <pbrook@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-11-19 13:12:38 +0000 |
| commit | 3e8b0d55dcaac6f40f63ff5ff2c258e86f25f0fd (patch) | |
| tree | 62a658e9ae3ce3dedccc3292aef5ed146df5c59b /gcc/varasm.c | |
| parent | 0d261841c34470f5a2e19570306babf7522cae54 (diff) | |
| download | ppe42-gcc-3e8b0d55dcaac6f40f63ff5ff2c258e86f25f0fd.tar.gz ppe42-gcc-3e8b0d55dcaac6f40f63ff5ff2c258e86f25f0fd.zip | |
PR target/17735
* varasm.c (default_assemble_integer): Allow pointer-sized values.
Expand comment.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@90918 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/varasm.c')
| -rw-r--r-- | gcc/varasm.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/gcc/varasm.c b/gcc/varasm.c index 6019b5a7e06..aaf9e53b22c 100644 --- a/gcc/varasm.c +++ b/gcc/varasm.c @@ -2026,8 +2026,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) + /* Avoid GAS bugs for large values. Specifically negative values whose + absolute value fits in a bfd_vma, but not in a bfd_signed_vma. */ + if (size > UNITS_PER_WORD && size > POINTER_SIZE / BITS_PER_UNIT) return false; return op && (assemble_integer_with_op (op, x), true); } |

