summaryrefslogtreecommitdiffstats
path: root/clang/unittests/Format/FormatTest.cpp
diff options
context:
space:
mode:
authorMichael Kuperstein <michael.m.kuperstein@intel.com>2015-05-19 11:06:56 +0000
committerMichael Kuperstein <michael.m.kuperstein@intel.com>2015-05-19 11:06:56 +0000
commite88a021bf43a122577e99785bf752adbcf557974 (patch)
tree15fb3e1d684038dbb9e4242a6b9370f70f98caf7 /clang/unittests/Format/FormatTest.cpp
parented41f774fca65e8d9319e66b7128da48d85724fc (diff)
downloadbcm5719-llvm-e88a021bf43a122577e99785bf752adbcf557974.tar.gz
bcm5719-llvm-e88a021bf43a122577e99785bf752adbcf557974.zip
[X86] ABI change for x86-32: pass 3 vector arguments in-register instead of 4, except on Darwin.
This changes the ABI used on 32-bit x86 for passing vector arguments. Historically, clang passes the first 4 vector arguments in-register, and additional vector arguments on the stack, regardless of platform. That is different from the behavior of gcc, icc, and msvc, all of which pass only the first 3 arguments in-register. The 3-register convention is documented, unofficially, in Agner's calling convention guide, and, officially, in the recently released version 1.0 of the i386 psABI. Darwin is kept as is because the OS X ABI Function Call Guide explicitly documents the current (4-register) behavior. This fixes PR21510 Differential revision: http://reviews.llvm.org/D9644 llvm-svn: 237682
Diffstat (limited to 'clang/unittests/Format/FormatTest.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud