svn commit: r223357 -
projects/llvm-ia64/contrib/llvm/lib/Target/IA64
Marcel Moolenaar
marcel at xcllnt.net
Tue Jun 21 15:40:31 UTC 2011
On Jun 21, 2011, at 12:13 AM, Roman Divacky wrote:
>> +
>> +SDValue
>> +IA64TargetLowering::LowerReturn(SDValue Chain, CallingConv::ID CallConv,
>> + bool isVarArg, const SmallVectorImpl<ISD::OutputArg> &Outs,
>> + const SmallVectorImpl<SDValue> &OutVals, DebugLoc dl,
>> + SelectionDAG &DAG) const
>> +{
>> + return Chain;
>> +}
>
> This doesn't look right, you probably want to copy the result(s) into
> register(s) or something like this.
Oh, it's definitely not right. I just want to get to the point where
I can compile 1 thing, no matter if that's:
void
foo(void)
{
}
The thing is that you can expand in multiple directions in parallel
after you have that. You can work on supporting more and different
formal arguments (including the icky varargs), different return
values and structure returns, more instructions patterns for the
instruction selection pass, etc.
More importantly, it allows me (in parallel) to work out the best
way to abstract the notion of having a flexible number of stacked
registers, rotating registers and other ia64 specific features.
FYI,
--
Marcel Moolenaar
marcel at xcllnt.net
More information about the svn-src-projects
mailing list