https://github.com/jakeegan updated 
https://github.com/llvm/llvm-project/pull/140850

>From 120423abadbfd63dbb50387fb5ce26ff0f3ff257 Mon Sep 17 00:00:00 2001
From: Jake Egan <jake.e...@ibm.com>
Date: Wed, 21 May 2025 01:51:00 -0400
Subject: [PATCH 1/2] Handle triple environment component for target runtime
 directory on AIX

---
 clang/lib/Driver/ToolChain.cpp            | 7 +++++++
 clang/test/Driver/aix-print-runtime-dir.c | 4 ++++
 2 files changed, 11 insertions(+)

diff --git a/clang/lib/Driver/ToolChain.cpp b/clang/lib/Driver/ToolChain.cpp
index 664aafad0f680..90fb0375d1925 100644
--- a/clang/lib/Driver/ToolChain.cpp
+++ b/clang/lib/Driver/ToolChain.cpp
@@ -935,6 +935,13 @@ ToolChain::getTargetSubDirPath(StringRef BaseDir) const {
   if (auto Path = getPathForTriple(T))
     return *Path;
 
+  // On AIX, the environment component is not used in the target sub dir name.
+  if (T.isOSAIX() && T.hasEnvironment()) {
+    llvm::Triple AIXTriple(T.getArchName(), T.getVendorName(), 
llvm::Triple::getOSTypeName(T.getOS()));
+    if (auto Path = getPathForTriple(AIXTriple))
+      return *Path;
+  }
+
   if (T.isOSzOS() &&
       (!T.getOSVersion().empty() || !T.getEnvironmentVersion().empty())) {
     // Build the triple without version information
diff --git a/clang/test/Driver/aix-print-runtime-dir.c 
b/clang/test/Driver/aix-print-runtime-dir.c
index ffa4d15c21208..ad841cb4f9b5b 100644
--- a/clang/test/Driver/aix-print-runtime-dir.c
+++ b/clang/test/Driver/aix-print-runtime-dir.c
@@ -16,6 +16,10 @@
 // RUN:        -resource-dir=%S/Inputs/resource_dir_with_per_target_subdir\
 // RUN:      | FileCheck --check-prefix=PRINT-RUNTIME-DIR64-PER-TARGET %s
 
+// RUN: %clang -print-runtime-dir --target=powerpc-ibm-aix-unknown \
+// RUN:        -resource-dir=%S/Inputs/resource_dir_with_per_target_subdir\
+// RUN:      | FileCheck --check-prefix=PRINT-RUNTIME-DIR32-PER-TARGET %s
+
 // PRINT-RUNTIME-DIR: lib{{/|\\}}aix{{$}}
 // PRINT-RUNTIME-DIR32-PER-TARGET: lib{{/|\\}}powerpc-ibm-aix{{$}}
 // PRINT-RUNTIME-DIR64-PER-TARGET: lib{{/|\\}}powerpc64-ibm-aix{{$}}

>From 6ed30e6b6b1a1627c554f2ec7c08d5014a21251c Mon Sep 17 00:00:00 2001
From: Jake Egan <jake.e...@ibm.com>
Date: Wed, 21 May 2025 09:45:50 -0400
Subject: [PATCH 2/2] Fix formatting

---
 clang/lib/Driver/ToolChain.cpp | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/clang/lib/Driver/ToolChain.cpp b/clang/lib/Driver/ToolChain.cpp
index 90fb0375d1925..4d66a53dad134 100644
--- a/clang/lib/Driver/ToolChain.cpp
+++ b/clang/lib/Driver/ToolChain.cpp
@@ -937,7 +937,8 @@ ToolChain::getTargetSubDirPath(StringRef BaseDir) const {
 
   // On AIX, the environment component is not used in the target sub dir name.
   if (T.isOSAIX() && T.hasEnvironment()) {
-    llvm::Triple AIXTriple(T.getArchName(), T.getVendorName(), 
llvm::Triple::getOSTypeName(T.getOS()));
+    llvm::Triple AIXTriple(T.getArchName(), T.getVendorName(),
+                           llvm::Triple::getOSTypeName(T.getOS()));
     if (auto Path = getPathForTriple(AIXTriple))
       return *Path;
   }

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to