[llvm-commits] [PATCH] Fix fastcc structure return with fast-isel on x86-32

Derek Schuff dschuff at google.com
Thu Apr 19 15:09:47 PDT 2012


Hi all,
on x86-32, structure return via sret lets the callee pop the hidden
pointer argument off the stack, which the caller then re-pushes.
However if the calling convention is fastcc, then a register is used
instead, and the caller should not adjust the stack. This is
implemented with a check of IsTailCallConvention
X86TargetLowering::LowerCall  but is not checked properly in
X86FastISel::DoSelectCall. The attached patch fixes that. Please
review.
thanks,
-Derek
-------------- next part --------------
A non-text attachment was scrubbed...
Name: FastIselFastcc.patch
Type: application/octet-stream
Size: 687 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20120419/561eb946/attachment.obj>


More information about the llvm-commits mailing list