http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49423
Martin Jambor <jamborm at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |bernds at codesourcery dot
| |com
--- Comment #8 from Martin Jambor <jamborm at gcc dot gnu.org> 2012-04-17
16:37:26 UTC ---
I'm sorry I forgot about this bug but I finally remembered to have a
look today. Unfortunately, on i686 host I was able to reproduce the
ICE also with revisions 164134 and 164135 and so I assumed that Mikael
made a mistake when he tracked the cause of the ICE to my commit in
comment #3. When verifying that on an x86_64 host, I realized that
the ICE indeed started happening with my commit but it re-appeared
quickly with previous revisions when I added -fno-tree-sra to the
command line options. Therefore I believe my patch did not cause any
bug but uncovered some other issue elsewhere.
In order to help at least a little, I did my own bisecting, this time
with -fno-tree-sra, and to me it appears the ICE (still present on the
4.6 branch) is introduced by revision 163935:
2010-09-07 Bernd Schmidt <[email protected]>
PR target/43137
* config/arm/iterators.md (qhs_zextenddi_cond, qhs_sextenddi_cond):
New define_mode_attrs.
* config/arm/arm.md (zero_extendsidi2, arm_zero_extendsidi2,
arm_exxtendsidi2, arm_extendsidi2): Delete patterns.
(zero_extend<mode>di2, extend<mode>di2 and related splits): New.
(thumb1_zero_extendhisi2): Remove code to handle LABEL_REFs.
Remove pool_range attribute.
(arm_zero_extendhisi2, arm_zero_extendhisi2_v6, arm_zero_extendqisi2,
arm_zero_extendqisi2_v6, thumb1_zero_extendqisi2_v6): Remove
pool_range and neg_pool_range attributes.
* config/arm/thumb2.md (thumb2_zero_extendsidi2,
thumb2_zero_extendhidi2, thumb2_zero_extendqidi2, thumb2_extendsidi2,
thumb2_extendhidi2, thumb2_extendqidi2): Delete.