[clang] [Driver][FreeBSD] Remove FreeBSD/loongarch32 support (PR #122515)

Brad Smith via cfe-commits cfe-commits at lists.llvm.org
Fri Jan 10 11:35:30 PST 2025


https://github.com/brad0 created https://github.com/llvm/llvm-project/pull/122515

FreeBSD going forward will not have 32-bit arch support.

Also missed a spot with removing riscv32 support.

>From e2bec3c01ebfa5005081189796e5d28c784ff510 Mon Sep 17 00:00:00 2001
From: Brad Smith <brad at comstyle.com>
Date: Fri, 10 Jan 2025 14:30:03 -0500
Subject: [PATCH] [Driver][FreeBSD] Remove FreeBSD/loongarch32 support

FreeBSD going forward will not have 32-bit arch support.

Also missed a spot with removing riscv32 support.
---
 clang/lib/Basic/Targets.cpp             | 3 ---
 clang/lib/Basic/Targets/OSTargets.h     | 5 +----
 clang/lib/Driver/ToolChains/FreeBSD.cpp | 4 ----
 clang/test/Driver/freebsd.c             | 3 ---
 4 files changed, 1 insertion(+), 14 deletions(-)

diff --git a/clang/lib/Basic/Targets.cpp b/clang/lib/Basic/Targets.cpp
index be5dedbe8044e2..872f2952a1bae2 100644
--- a/clang/lib/Basic/Targets.cpp
+++ b/clang/lib/Basic/Targets.cpp
@@ -735,9 +735,6 @@ std::unique_ptr<TargetInfo> AllocateTarget(const llvm::Triple &Triple,
     case llvm::Triple::Linux:
         return std::make_unique<LinuxTargetInfo<LoongArch32TargetInfo>>(Triple,
                                                                         Opts);
-    case llvm::Triple::FreeBSD:
-      return std::make_unique<FreeBSDTargetInfo<LoongArch32TargetInfo>>(Triple,
-                                                                        Opts);
     default:
         return std::make_unique<LoongArch32TargetInfo>(Triple, Opts);
     }
diff --git a/clang/lib/Basic/Targets/OSTargets.h b/clang/lib/Basic/Targets/OSTargets.h
index 53dd23c3129636..3408b008b2217c 100644
--- a/clang/lib/Basic/Targets/OSTargets.h
+++ b/clang/lib/Basic/Targets/OSTargets.h
@@ -228,11 +228,8 @@ class LLVM_LIBRARY_VISIBILITY FreeBSDTargetInfo : public OSTargetInfo<Target> {
     case llvm::Triple::arm:
       this->MCountName = "__mcount";
       break;
-    case llvm::Triple::riscv32:
-    case llvm::Triple::riscv64:
-      break;
-    case llvm::Triple::loongarch32:
     case llvm::Triple::loongarch64:
+    case llvm::Triple::riscv64:
       break;
     }
   }
diff --git a/clang/lib/Driver/ToolChains/FreeBSD.cpp b/clang/lib/Driver/ToolChains/FreeBSD.cpp
index 88a27e3192827f..a6d859f0ebfec2 100644
--- a/clang/lib/Driver/ToolChains/FreeBSD.cpp
+++ b/clang/lib/Driver/ToolChains/FreeBSD.cpp
@@ -213,10 +213,6 @@ void freebsd::Linker::ConstructJob(Compilation &C, const JobAction &JA,
     CmdArgs.push_back("-m");
     CmdArgs.push_back("elf64lriscv");
     break;
-  case llvm::Triple::loongarch32:
-    CmdArgs.push_back("-m");
-    CmdArgs.push_back("elf32loongarch");
-    break;
   case llvm::Triple::loongarch64:
     CmdArgs.push_back("-m");
     CmdArgs.push_back("elf64loongarch");
diff --git a/clang/test/Driver/freebsd.c b/clang/test/Driver/freebsd.c
index a0787bab4feb8f..94db63278bfe97 100644
--- a/clang/test/Driver/freebsd.c
+++ b/clang/test/Driver/freebsd.c
@@ -79,9 +79,6 @@
 //
 // Check that LoongArch passes the correct linker emulation.
 //
-// RUN: %clang --target=loongarch32-freebsd -### %s %s 2>&1 \
-// RUN:   | FileCheck --check-prefix=CHECK-LA32-LD %s
-// CHECK-LA32-LD: ld{{.*}}" {{.*}} "-m" "elf32loongarch"
 // RUN: %clang --target=loongarch64-freebsd -### %s %s 2>&1 \
 // RUN:   | FileCheck --check-prefix=CHECK-LA64-LD %s
 // CHECK-LA64-LD: ld{{.*}}" {{.*}} "-m" "elf64loongarch"



More information about the cfe-commits mailing list