OSDN Git Service

[WebAssembly] Call memcpy for large byval copies.
authorDan Gohman <dan433584@gmail.com>
Wed, 17 Feb 2016 01:43:37 +0000 (01:43 +0000)
committerDan Gohman <dan433584@gmail.com>
Wed, 17 Feb 2016 01:43:37 +0000 (01:43 +0000)
commit1a8392e4835e4843c7a473080610175c2230534b
treeca5362c0c1a507ebd6f0545cf25e4abaf018d3fa
parent39e0580624cc0d8c334daa58da706f9ba6c02c22
[WebAssembly] Call memcpy for large byval copies.

This fixes very slow compilation on
test/CodeGen/Generic/2010-11-04-BigByval.ll . Note that MaxStoresPerMemcpy
and friends are not yet carefully tuned so the cutoff point is currently
somewhat arbitrary. However, it's important that there be a cutoff point
so that we don't emit unbounded quantities of loads and stores.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@261050 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
test/CodeGen/WebAssembly/byval.ll