[llvm] r178170 - Fix typo (common to both X86 and PPC)

Michael Liao michael.liao at intel.com
Wed Mar 27 14:02:10 PDT 2013


I c. I will fix that by checking whether base pointer is used or not.
thanks. - michael

On Wed, 2013-03-27 at 13:59 -0700, Jakob Stoklund Olesen wrote:
> On Mar 27, 2013, at 1:56 PM, Michael Liao <michael.liao at intel.com> wrote:
> 
> > On Wed, 2013-03-27 at 13:48 -0700, Jakob Stoklund Olesen wrote:
> >> On Mar 27, 2013, at 1:37 PM, Hal Finkel <hfinkel at anl.gov> wrote:
> >> 
> >>>> As all registers are added in regmask, if function at that point
> >>>> (EH_SjLj_Setup) uses base pointer register, it will be spilled and
> >>>> restored from the restoreMBB. Your PPC implementation needs similar
> >>>> thing to mask all registers clobbered at that point.
> >>> 
> >>> So it will spill even reserved registers? (I've been unclear myself on this part of the RA implementation).
> >> 
> >> RA never touches reserved registers. They are the responsibility of the target code.
> > 
> > RA will save callee-saved register if you mark them clobbered.
> 
> No, PrologEpilogInsertion does that with the help of the target.
> 
> > On X86,
> > base pointer is chosen from a callee-saved register. If I understand
> > right, I need reload that base pointer explicitly after longjmp, is that
> > right?
> 
> If it is reserved, it won't happen automatically.
> 
> /jakob
> 





More information about the llvm-commits mailing list