This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/20054] ICE in change_address_1
- From: "jakub at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 18 Feb 2005 13:32:47 -0000
- Subject: [Bug target/20054] ICE in change_address_1
- References: <20050218131737.20054.jakub@gcc.gnu.org>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From jakub at gcc dot gnu dot org 2005-02-18 13:32 -------
The problem is alter_subreg is called during rest_of_handle_flow2 splitting
on (subreg:DI (mem:SI (reg:DI 12 %r12 [orig:46 D.1072 ] [46]) [0 S4 A32]) 0).
As flow2 is already past reload, I think this shouldn't be valid RTL, as per
documentation:
"The reload pass ensures that paradoxical references are only made to hard
registers."
The insn in question is
(insn 77 13 16 0 (set (reg:DI 1 %r1 [51])
(and:DI (subreg:DI (mem:SI (reg:DI 12 %r12 [orig:46 D.1072 ] [46]) [0 S4
A32]) 0)
(const_int 2147483647 [0x7fffffff]))) 98 {*llgt_didi} (nil)
--
What |Removed |Added
----------------------------------------------------------------------------
CC| |uweigand at gcc dot gnu dot
| |org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20054