summaryrefslogtreecommitdiff
path: root/gcc/expr.c
diff options
context:
space:
mode:
authorebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4>2004-02-19 07:52:51 +0000
committerebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4>2004-02-19 07:52:51 +0000
commit6be0ba7cacf30b353d78e8f420b852b35084a938 (patch)
tree7de189d67e475db2ec90a8e30149a8018186c9d8 /gcc/expr.c
parentecbfdc878159c748742c4a5e8d416e4edd90cac9 (diff)
downloadgcc-6be0ba7cacf30b353d78e8f420b852b35084a938.tar.gz
* expr.c (is_aligning_offset): Check if we are aligning the
expressions's address over BIGGEST_ALIGNMENT in bytes, not in bits. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@78076 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/expr.c')
-rw-r--r--gcc/expr.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/expr.c b/gcc/expr.c
index 223a36b0136..907d30c4006 100644
--- a/gcc/expr.c
+++ b/gcc/expr.c
@@ -9088,7 +9088,8 @@ is_aligning_offset (tree offset, tree exp)
power of 2 and which is larger than BIGGEST_ALIGNMENT. */
if (TREE_CODE (offset) != BIT_AND_EXPR
|| !host_integerp (TREE_OPERAND (offset, 1), 1)
- || compare_tree_int (TREE_OPERAND (offset, 1), BIGGEST_ALIGNMENT) <= 0
+ || compare_tree_int (TREE_OPERAND (offset, 1),
+ BIGGEST_ALIGNMENT / BITS_PER_UNIT) <= 0
|| !exact_log2 (tree_low_cst (TREE_OPERAND (offset, 1), 1) + 1) < 0)
return 0;