diff options
author | Dan Gohman <dan433584@gmail.com> | 2019-02-26 05:20:19 +0000 |
---|---|---|
committer | Dan Gohman <dan433584@gmail.com> | 2019-02-26 05:20:19 +0000 |
commit | c71132c0be4ed8621d0cbe3d895506798ce1f1e5 (patch) | |
tree | f8ceeefbb7dd89bd6aaae78109020056d69bfb8b /llvm/lib/Object/ELFObjectFile.cpp | |
parent | 38b14e33a82bbaf2700dd1d1193603d2770e9624 (diff) | |
download | llvm-c71132c0be4ed8621d0cbe3d895506798ce1f1e5.zip llvm-c71132c0be4ed8621d0cbe3d895506798ce1f1e5.tar.gz llvm-c71132c0be4ed8621d0cbe3d895506798ce1f1e5.tar.bz2 |
[WebAssembly] Properly align fp128 arguments in outgoing varargs arguments
For outgoing varargs arguments, it's necessary to check the OrigAlign field
of the corresponding OutputArg entry to determine argument alignment, rather
than just computing an alignment from the argument value type. This is
because types like fp128 are split into multiple argument values, with
narrower types that don't reflect the ABI alignment of the full fp128.
This fixes the printf("printfL: %4.*Lf\n", 2, lval); testcase.
Differential Revision: https://reviews.llvm.org/D58656
llvm-svn: 354846
Diffstat (limited to 'llvm/lib/Object/ELFObjectFile.cpp')
0 files changed, 0 insertions, 0 deletions