This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug middle-end/14084] Reg allocator changes REG_EXPR
- From: "zlomj9am at artax dot karlin dot mff dot cuni dot cz" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 9 Feb 2004 16:44:33 -0000
- Subject: [Bug middle-end/14084] Reg allocator changes REG_EXPR
- References: <20040209141044.14084.zlomek@gcc.gnu.org>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From zlomj9am at artax dot karlin dot mff dot cuni dot cz 2004-02-09 16:44 -------
Subject: Re: Reg allocator changes REG_EXPR
> A slightly older gcc and I do not see this (3.4.0 20031228), I am wondering if something changed
> between then and now which could have effected this.
> Here is what I see:
> lgrep:
>
> (insn:HI 52 9 53 0 (set (reg:CC 124)
> (compare:CC (subreg/s:SI (reg/v:DI 119 [ rdcount ]) 4)
> (subreg/s:SI (reg/v:DI 118 [ repcount ]) 4))) 412 {*cmpsi_internal1} (insn_list 9 (insn_list 3 (nil)))
> (expr_list:REG_EQUAL (compare:CC (const_int 0 [0x0])
> (subreg/s:SI (reg/v:DI 118 [ repcount ]) 4))
> (nil)))
> grep:
>
> (insn:HI 52 9 53 0 (set (reg:CC 7 [124])
> (compare:CC (reg:SI 31 [orig:119 rdcount+4 ] [119])
> (reg:SI 30 [orig:118 repcount+4 ] [118]))) 412 {*cmpsi_internal1} (insn_list 9 (insn_list 3 (nil)))
> (expr_list:REG_EQUAL (compare:CC (const_int 0 [0x0])
> (subreg/s:SI (reg/v:DI 30 [orig:118 repcount ] [118]) 4))
> (nil)))
I see the problem here:
(subreg/s:SI (reg/v:DI 118 [ repcount ]) 4)
is changed to
(reg:SI 30 [orig:118 repcount+4 ] [118])
Josef
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14084