------- 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