[Bug middle-end/32940] REG_POINTER attribute on DECL_ARTIFICIAL pointers
pinskia at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Mon Jul 30 23:54:00 GMT 2007
------- Comment #1 from pinskia at gcc dot gnu dot org 2007-07-30 23:54 -------
;; quadrant.0 = quadrant
(insn 16 15 17 t.c:8 (set (reg:SI 127)
(high:SI (symbol_ref:SI ("quadrant") [flags 0x84] <var_decl 0xf7d9f070
quadrant>))) -1 (nil))
(insn 17 16 18 t.c:8 (set (reg/f:SI 126)
(lo_sum:SI (reg:SI 127)
(symbol_ref:SI ("quadrant") [flags 0x84] <var_decl 0xf7d9f070
quadrant>))) -1 (expr_list:REG_EQUAL (symbol_ref:SI ("quadrant") [flags 0x84]
<var_decl 0xf7d9f070 quadrant>)
(nil)))
(insn 18 17 0 t.c:8 (set (reg:SI 121 [ quadrant.0 ])
(mem/f/c/i:SI (reg/f:SI 126) [2 quadrant+0 S4 A32])) -1 (nil))
The problem here is that DECL_ARTIFICIAL causes REG_POINTER not to be set.
See: http://gcc.gnu.org/ml/gcc-patches/2004-06/msg00020.html
Reverting that patch was the next step on my pointer plus work (after fixing up
the regressions that still need fixing).
--
pinskia at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
AssignedTo|unassigned at gcc dot gnu |pinskia at gcc dot gnu dot
|dot org |org
Status|UNCONFIRMED |ASSIGNED
Ever Confirmed|0 |1
Last reconfirmed|0000-00-00 00:00:00 |2007-07-30 23:54:41
date| |
Summary|ivopts fails to set |REG_POINTER attribute on
|REG_POINTER attribute on |DECL_ARTIFICIAL pointers
|pseudo |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32940
More information about the Gcc-bugs
mailing list