On Feb 5, 2008, at 2:25 PM, Chris Lattner wrote: > On Feb 5, 2008, at 12:46 PM, Dale Johannesen wrote: >> URL: http://llvm.org/viewvc/llvm-project?rev=46764&view=rev >> Log: >> Implement sseregparm. > > Very nice. > > One thought about X86_SSECall: if it is only used to return float/ > double in an xmm reg, you could get the same effect by having the CFE > lower ssecall functions to return <4x f32> and <2 x f64> instead of > float/double. On the callee, you'd end up with an "ret insertelement > undef, fpval" and on the caller side you'd get an extract element. > > I think the calling convention stuff that Evan has been working on is > powerful enough to model though sort of stuff, but might need minor > extensions. Do you think it would be reasonable do use this > approach? Doing so would eliminate a "magic" calling convention, > which would be nice :)
It would, but coercing standard types to a different type strikes me as worse. The IR really ought to be able to handle standard types without obfuscation. What I really wanted was to put InReg on the return value. _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits