[LLVMdev] RFC: PowerPC tail call optimization patch
Arnold Schwaighofer
arnold.schwaighofer at gmail.com
Thu Apr 24 10:40:36 PDT 2008
The patch is in
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20080421/061548.html
.
Okay to commit :)
On Thu, Apr 24, 2008 at 7:35 PM, Arnold Schwaighofer
<arnold.schwaighofer at gmail.com> wrote:
> Another round :)
>
> I'll post the patch to llvm-commits cause i guess people might get
> annoyed by my series of patches :).
>
> On Tue, Apr 22, 2008 at 10:34 PM, Evan Cheng <evan.cheng at apple.com> wrote:
> .
> >> +PPCTargetLowering::IsEligibleForTailCallOptimization(SDOperand Call,
> >> ...
>
> > That's fine. Please break it into two parts and move the target
> > independent part out.
> Done - see CheckTailCallReturnConstraints() in TargetLowering. The
> rest of the function is still target dependent. PowerPC currently can
> not tail call optimize byval functions, no pic/got code for non-local
> calls. On x86 no support for pic/got code on x86-64 for non-local
> calls.
>
>
> > I am not sure. Just thinking aloud. It would be nice if all of the
> > common code can be handled by SelectionDAGISel. For example, it seems
> > possible for SDIsel to determine which operands can be overwritten and
> > issued the copies there?
> >
> >
> Yes the common code between x86/ppc could be moved to
> SelectionDAGISel. See CheckDAGForTailCallsAndFixThem().
>
> > There seem to be quite a bit of duplicated code. Can you refactor?
> Created LowerMemOpCallTo.
>
> -arnold
>
More information about the llvm-dev
mailing list