------- Comment #6 from dave at hiauly1 dot hia dot nrc dot ca 2010-03-17 18:19 ------- Subject: Re: [4.5 Regression] ICE in stage1 compiling __bswapdi2
> var-tracking expects that if frame_pointer_rtx (resp. arg_pointer_rtx, > depending on whether FRAME_POINTER_CFA_OFFSET or ARG_POINTER_CFA_OFFSET is > defined) > is said to be eliminated (to stack_pointer_rtx in case of > !frame_pointer_needed), then it is actually eliminated. Apparently that's not > the case on PA, which happily uses both %r3 and %r30 in the code. ELIMINABLE_REGS isn't defined, we have the default frame pointer elimination. If the frame pointer has been eliminated, then %r3 shouldn't be the frame pointer. I see that %r3 is used in the code but it's not used as the frame pointer. Dave -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43403