[PATCH] D17048: [WebAssembly] Switch varags calling convention to use a register
Derek Schuff via llvm-commits
llvm-commits at lists.llvm.org
Tue Feb 9 15:16:40 PST 2016
dschuff created this revision.
dschuff added reviewers: sunfish, jfb.
dschuff added a subscriber: llvm-commits.
Herald added subscribers: dschuff, jfb.
Instead of passing varargs directly on the user stack, allocate a buffer in
the caller's stack frame and pass a pointer to it. This simplifies the C
ABI (e.g. non-C callers of C functions do not need to use C's user stack if
they have their own mechanism) and allows further optimizations in the future
(e.g. fewer functions may need to use the stack).
http://reviews.llvm.org/D17048
Files:
lib/Target/WebAssembly/InstPrinter/WebAssemblyInstPrinter.cpp
lib/Target/WebAssembly/WebAssemblyFrameLowering.cpp
lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
lib/Target/WebAssembly/known_gcc_test_failures.txt
test/CodeGen/WebAssembly/varargs.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D17048.47381.patch
Type: text/x-patch
Size: 14052 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160209/fc3b5e86/attachment-0001.bin>
More information about the llvm-commits
mailing list