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: "pinskia at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 9 Feb 2004 16:40:36 -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 pinskia at gcc dot gnu dot org 2004-02-09 16:40 -------
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 3 4 9 0 (set (reg/v:DI 118 [ repcount ])
(reg:DI 3 [ repcount ])) 327 {*movdi_internal64} (nil)
(expr_list:REG_DEAD (reg:DI 3 [ repcount ])
(expr_list:REG_EQUIV (mem/f:DI (plus:DI (reg/f:DI ap)
(const_int 48 [0x30])) [3 repcount+0 S4 A64])
(nil))))
(insn:HI 9 3 52 0 (set (reg/v:DI 119 [ rdcount ])
(const_int 0 [0x0])) 327 {*movdi_internal64} (nil)
(nil))
(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 3 4 9 0 (set (reg/v:DI 30 [orig:118 repcount ] [118])
(reg:DI 3 [ repcount ])) 327 {*movdi_internal64} (nil)
(expr_list:REG_EQUIV (mem/f:DI (plus:DI (reg/f:DI ap)
(const_int 48 [0x30])) [3 repcount+0 S4 A64])
(nil)))
(insn:HI 9 3 52 0 (set (reg/v:DI 31 [orig:119 rdcount ] [119])
(const_int 0 [0x0])) 327 {*movdi_internal64} (nil)
(nil))
(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)))
Which looks right.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14084