diff options
author | Zdenek Dvorak <dvorakz@suse.cz> | 2006-03-29 03:34:51 +0200 |
---|---|---|
committer | Zdenek Dvorak <rakdver@gcc.gnu.org> | 2006-03-29 01:34:51 +0000 |
commit | dd79d394de1e40e40a64f6661b50043058c5a45e (patch) | |
tree | 7ce8167061f079354d2770fb94f3a0b3b1a80db0 | |
parent | 93dec1d186c0eceafc0343cf2947013d7296eb4d (diff) | |
download | gcc-dd79d394de1e40e40a64f6661b50043058c5a45e.zip gcc-dd79d394de1e40e40a64f6661b50043058c5a45e.tar.gz gcc-dd79d394de1e40e40a64f6661b50043058c5a45e.tar.bz2 |
re PR middle-end/26643 (Linux matroxfb_probe miscompiled)
PR tree-optimization/26643
* tree-ssa-loop-ivopts.c (find_interesting_uses_address): Do not handle
bit_field_refs.
From-SVN: r112483
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/tree-ssa-loop-ivopts.c | 5 |
2 files changed, 9 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2db7f66..c664631 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2006-03-28 Zdenek Dvorak <dvorakz@suse.cz> + + PR tree-optimization/26643 + * tree-ssa-loop-ivopts.c (find_interesting_uses_address): Do not handle + bit_field_refs. + 2006-03-28 Kaz Kojima <kkojima@gcc.gnu.org> * config/sh/sh.md (udivsi3_i4_int): Clobber MACH_REG and MACL_REG. diff --git a/gcc/tree-ssa-loop-ivopts.c b/gcc/tree-ssa-loop-ivopts.c index 9e31041..517b812 100644 --- a/gcc/tree-ssa-loop-ivopts.c +++ b/gcc/tree-ssa-loop-ivopts.c @@ -1482,8 +1482,9 @@ find_interesting_uses_address (struct ivopts_data *data, tree stmt, tree *op_p) /* Ignore bitfields for now. Not really something terribly complicated to handle. TODO. */ - if (TREE_CODE (base) == COMPONENT_REF - && DECL_NONADDRESSABLE_P (TREE_OPERAND (base, 1))) + if (TREE_CODE (base) == BIT_FIELD_REF + || (TREE_CODE (base) == COMPONENT_REF + && DECL_NONADDRESSABLE_P (TREE_OPERAND (base, 1)))) goto fail; if (STRICT_ALIGNMENT |