diff options
| author | gingerBill <bill@gingerbill.org> | 2024-09-30 11:45:24 +0100 |
|---|---|---|
| committer | gingerBill <bill@gingerbill.org> | 2024-09-30 11:45:24 +0100 |
| commit | b173fa1b9a5643d0dff68d5f780351fa21f56630 (patch) | |
| tree | e2102e67279a9b5825e3bd58314b73c2a5de2410 /src | |
| parent | 225ffdec36c7e131cac8b10a68a45037307adc83 (diff) | |
Fix LLVM 18 ABI for 128-bit integers (because LLVM broke things)
Diffstat (limited to 'src')
| -rw-r--r-- | src/llvm_abi.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/llvm_abi.cpp b/src/llvm_abi.cpp index 42086b09d..d0fe541da 100644 --- a/src/llvm_abi.cpp +++ b/src/llvm_abi.cpp @@ -531,6 +531,7 @@ namespace lbAbiAmd64SysV { RegClass_SSEInt16, RegClass_SSEInt32, RegClass_SSEInt64, + RegClass_SSEInt128, RegClass_SSEUp, RegClass_X87, RegClass_X87Up, @@ -616,6 +617,10 @@ namespace lbAbiAmd64SysV { } switch (kind) { case LLVMIntegerTypeKind: + if (LLVM_VERSION_MAJOR >= 18 && sz >= 16) { + return false; + } + return true; case LLVMHalfTypeKind: case LLVMFloatTypeKind: case LLVMDoubleTypeKind: |