aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorJob Noorman <jobnoorman@gmail.com>2014-08-29 08:23:53 +0000
committerJob Noorman <jobnoorman@gmail.com>2014-08-29 08:23:53 +0000
commit9b31bd6bb09f61882f3d8407140a6b8caba194bf (patch)
tree7ff58337d4504558fea80c48e9993ba23736b377 /clang/lib/Frontend/CompilerInvocation.cpp
parent50a5f97e829c9878f1d611650f57b88d99c6ab96 (diff)
downloadllvm-9b31bd6bb09f61882f3d8407140a6b8caba194bf.zip
llvm-9b31bd6bb09f61882f3d8407140a6b8caba194bf.tar.gz
llvm-9b31bd6bb09f61882f3d8407140a6b8caba194bf.tar.bz2
Do not assume the value passed to memset is an i32.
The code in SelectionDAG::getMemset for some reason assumes the value passed to memset is an i32. This breaks the generated code for targets that only have registers smaller than 32 bits because the value might get split into multiple registers by the calling convention. See the test for the MSP430 target included in the patch for an example. This patch ensures that nothing is assumed about the type of the value. Instead, the type is taken from the selected overload of the llvm.memset intrinsic. llvm-svn: 216716
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions