aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Object/XCOFFObjectFile.cpp
diff options
context:
space:
mode:
authorMartin Storsjö <martin@martin.st>2021-05-31 23:55:26 +0300
committerMartin Storsjö <martin@martin.st>2021-06-07 22:34:10 +0300
commit6de45b9e6a2c4b69ca82916a4cc1b4b8636d79b3 (patch)
tree9b0b4268c7c334b4f0e200bdbfeed770dd5f7f99 /llvm/lib/Object/XCOFFObjectFile.cpp
parent8fdd7c2ff16da370e28ef1b22e400d57a541484f (diff)
downloadllvm-6de45b9e6a2c4b69ca82916a4cc1b4b8636d79b3.zip
llvm-6de45b9e6a2c4b69ca82916a4cc1b4b8636d79b3.tar.gz
llvm-6de45b9e6a2c4b69ca82916a4cc1b4b8636d79b3.tar.bz2
[clang] Fix reading long doubles with va_arg on x86_64 mingw
On x86_64 mingw, long doubles are always passed indirectly as arguments (see an existing case in WinX86_64ABIInfo::classify); generalize the existing code for reading varargs - any non-aggregate type that is larger than 64 bits (which would be both long double in mingw, and __int128) are passed indirectly too. This makes reading varargs consistent with how they're passed, fixing interop with both gcc and clang callers, for long double and __int128. Differential Revision: https://reviews.llvm.org/D103452
Diffstat (limited to 'llvm/lib/Object/XCOFFObjectFile.cpp')
0 files changed, 0 insertions, 0 deletions