Author: Prabhu Rajasekaran Date: 2025-05-08T09:08:46-07:00 New Revision: 5c6cbe25175be37ffa1c809f5163ab7aebecef1a
URL: https://github.com/llvm/llvm-project/commit/5c6cbe25175be37ffa1c809f5163ab7aebecef1a DIFF: https://github.com/llvm/llvm-project/commit/5c6cbe25175be37ffa1c809f5163ab7aebecef1a.diff LOG: [clang] UEFI default ABI (#138364) Set MS ABI as default ABI for UEFI. Added: Modified: clang/lib/Driver/ToolChains/Arch/X86.cpp clang/test/Driver/x86-mabi.c Removed: ################################################################################ diff --git a/clang/lib/Driver/ToolChains/Arch/X86.cpp b/clang/lib/Driver/ToolChains/Arch/X86.cpp index e6ac3a9e4b350..a7362e960c3d4 100644 --- a/clang/lib/Driver/ToolChains/Arch/X86.cpp +++ b/clang/lib/Driver/ToolChains/Arch/X86.cpp @@ -122,7 +122,8 @@ void x86::getX86TargetFeatures(const Driver &D, const llvm::Triple &Triple, // Claim and report unsupported -mabi=. Note: we don't support "sysv_abi" or // "ms_abi" as default function attributes. if (const Arg *A = Args.getLastArg(clang::driver::options::OPT_mabi_EQ)) { - StringRef DefaultAbi = Triple.isOSWindows() ? "ms" : "sysv"; + StringRef DefaultAbi = + (Triple.isOSWindows() || Triple.isUEFI()) ? "ms" : "sysv"; if (A->getValue() != DefaultAbi) D.Diag(diag::err_drv_unsupported_opt_for_target) << A->getSpelling() << Triple.getTriple(); diff --git a/clang/test/Driver/x86-mabi.c b/clang/test/Driver/x86-mabi.c index 5d15337cb1118..1aae5e08507a7 100644 --- a/clang/test/Driver/x86-mabi.c +++ b/clang/test/Driver/x86-mabi.c @@ -1,6 +1,8 @@ // RUN: %clang -### --target=x86_64-windows-msvc -mabi=ms -S %s 2>&1 | FileCheck %s +// RUN: %clang -### --target=x86_64-uefi -mabi=ms -S %s 2>&1 | FileCheck %s // RUN: not %clang -### --target=i386-unknown-linux -mabi=ms -S %s 2>&1 | FileCheck --check-prefix=ERR %s // RUN: not %clang -### --target=x86_64-windows-msvc -mabi=sysv -S %s 2>&1 | FileCheck --check-prefix=ERR %s +// RUN: not %clang -### --target=x86_64-uefi -mabi=sysv -S %s 2>&1 | FileCheck --check-prefix=ERR %s // RUN: %clang -### --target=i386-unknown-linux -mabi=sysv -S %s 2>&1 | FileCheck %s // RUN: %clang -### --target=x86_64-windows-gnu -mabi=ms -S %s 2>&1 | FileCheck %s _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits