This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Some aliasing questions


On 04/11/2016 05:30 PM, Alan Modra wrote:
Either way, when we split to
	set (reg tmp) (high (const (minus ((symbol_ref) (reg 2)))))
	.. mem (lo_sum (reg tmp) (const (minus ((symbol_ref) (reg 2)))))
both high and lo_sum reference r2 and the linker could happily replace
rtmp in the lo_sum insn with r2 when the high address is known to be
zero.

It would be interesting to see if the r2 reference in fact gets picked up inside the const. My first reaction is that I could imagine tracking skipping over it completely, since we've been promised that the expression is constant.

Alternately, perhaps alias.c should reuse the existing delegitimize_address hook, allowing it to look through your current unspecs.


r~


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]