From b173fa1b9a5643d0dff68d5f780351fa21f56630 Mon Sep 17 00:00:00 2001 From: gingerBill Date: Mon, 30 Sep 2024 11:45:24 +0100 Subject: Fix LLVM 18 ABI for 128-bit integers (because LLVM broke things) --- src/llvm_abi.cpp | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src/llvm_abi.cpp') 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: -- cgit v1.2.3