------- Comment #3 from bernds at gcc dot gnu dot org 2010-06-21 23:59 ------- At first glance, it looks like the tricks in the prefetch_cc simply aren't valid. It seems to be trying to prevent certain types of addressing modes, but reload is allowed to change them as it sees fit.
If I read the code right, hppa64 always uses flag_pic and thus the reg_equiv_invariant machinery has always been disabled previously? The best solution would be to find a way to write that pattern (and others, if there are any) in a valid way; otherwise a new target macro might be able to prevent this optimization on PA (however I don't think there's a guarantee that this will work reliably). The frame-address thing appears to be PR44505. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44597