[PATCH] D88182: [clang][driver][AIX] Set compiler-rt as default rtlib
This revision was automatically updated to reflect the committed changes. Closed by commit rGee80615b5c1c: [clang][driver][AIX] Set compiler-rt as default rtlib (authored by daltenty). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D88182/new/ https://reviews.llvm.org/D88182 Files: clang/lib/Driver/ToolChain.cpp clang/lib/Driver/ToolChains/AIX.cpp clang/lib/Driver/ToolChains/AIX.h clang/test/Driver/aix-ld.c clang/test/Driver/aix-rtlib.c Index: clang/test/Driver/aix-rtlib.c === --- /dev/null +++ clang/test/Driver/aix-rtlib.c @@ -0,0 +1,10 @@ +// Check the default rtlib for AIX. +// RUN: %clang -target powerpc-ibm-aix -print-libgcc-file-name -no-canonical-prefixes \ +// RUN:-resource-dir=%S/Inputs/resource_dir \ +// RUN: | FileCheck -check-prefix=CHECK32 %s +// RUN: %clang -target powerpc64-ibm-aix -print-libgcc-file-name -no-canonical-prefixes \ +// RUN:-resource-dir=%S/Inputs/resource_dir \ +// RUN: | FileCheck -check-prefix=CHECK64 %s + +// CHECK32: resource_dir{{/|\\}}lib{{/|\\}}aix{{/|\\}}libclang_rt.builtins-powerpc.a +// CHECK64: resource_dir{{/|\\}}lib{{/|\\}}aix{{/|\\}}libclang_rt.builtins-powerpc64.a Index: clang/test/Driver/aix-ld.c === --- clang/test/Driver/aix-ld.c +++ clang/test/Driver/aix-ld.c @@ -3,11 +3,13 @@ // Check powerpc-ibm-aix7.1.0.0, 32-bit. // RUN: %clang -no-canonical-prefixes %s -### 2>&1 \ +// RUN:-resource-dir=%S/Inputs/resource_dir \ // RUN:-target powerpc-ibm-aix7.1.0.0 \ // RUN:--sysroot %S/Inputs/aix_ppc_tree \ // RUN: | FileCheck --check-prefix=CHECK-LD32 %s // CHECK-LD32-NOT: warning: // CHECK-LD32: {{.*}}clang{{(.exe)?}}" "-cc1" "-triple" "powerpc-ibm-aix7.1.0.0" +// CHECK-LD32: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" // CHECK-LD32: "-isysroot" "[[SYSROOT:[^"]+]]" // CHECK-LD32: "{{.*}}ld{{(.exe)?}}" // CHECK-LD32-NOT: "-bnso" @@ -17,15 +19,18 @@ // CHECK-LD32-NOT: "[[SYSROOT]]/usr/lib{{/|}}crti.o" // CHECK-LD32: "-L[[SYSROOT]]/usr/lib" // CHECK-LD32-NOT: "-lc++" +// CHECK-LD32: "[[RESOURCE_DIR]]{{/|}}lib{{/|}}aix{{/|}}libclang_rt.builtins-powerpc.a" // CHECK-LD32: "-lc" // Check powerpc64-ibm-aix7.1.0.0, 64-bit. // RUN: %clang -no-canonical-prefixes %s -### 2>&1 \ +// RUN:-resource-dir=%S/Inputs/resource_dir \ // RUN:-target powerpc64-ibm-aix7.1.0.0 \ // RUN:--sysroot %S/Inputs/aix_ppc_tree \ // RUN: | FileCheck --check-prefix=CHECK-LD64 %s // CHECK-LD64-NOT: warning: // CHECK-LD64: {{.*}}clang{{(.exe)?}}" "-cc1" "-triple" "powerpc64-ibm-aix7.1.0.0" +// CHECK-LD64: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" // CHECK-LD64: "-isysroot" "[[SYSROOT:[^"]+]]" // CHECK-LD64: "{{.*}}ld{{(.exe)?}}" // CHECK-LD64-NOT: "-bnso" @@ -35,16 +40,19 @@ // CHECK-LD64-NOT: "[[SYSROOT]]/usr/lib{{/|}}crti_64.o" // CHECK-LD64: "-L[[SYSROOT]]/usr/lib" // CHECK-LD64-NOT: "-lc++" +// CHECK-LD64: "[[RESOURCE_DIR]]{{/|}}lib{{/|}}aix{{/|}}libclang_rt.builtins-powerpc64.a" // CHECK-LD64: "-lc" // Check powerpc-ibm-aix7.1.0.0, 32-bit. Enable POSIX thread support. // RUN: %clang -no-canonical-prefixes %s -### 2>&1 \ +// RUN:-resource-dir=%S/Inputs/resource_dir \ // RUN:-pthread \ // RUN:-target powerpc-ibm-aix7.1.0.0 \ // RUN:--sysroot %S/Inputs/aix_ppc_tree \ // RUN: | FileCheck --check-prefix=CHECK-LD32-PTHREAD %s // CHECK-LD32-PTHREAD-NOT: warning: // CHECK-LD32-PTHREAD: {{.*}}clang{{(.exe)?}}" "-cc1" "-triple" "powerpc-ibm-aix7.1.0.0" +// CHECK-LD32-PTHREAD: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" // CHECK-LD32-PTHREAD: "-isysroot" "[[SYSROOT:[^"]+]]" // CHECK-LD32-PTHREAD: "{{.*}}ld{{(.exe)?}}" // CHECK-LD32-PTHREAD-NOT: "-bnso" @@ -54,17 +62,20 @@ // CHECK-LD32-PTHREAD-NOT: "[[SYSROOT]]/usr/lib{{/|}}crti.o" // CHECK-LD32-PTHREAD: "-L[[SYSROOT]]/usr/lib" // CHECK-LD32-PTHREAD-NOT: "-lc++" +// CHECK-LD32-PTHREAD: "[[RESOURCE_DIR]]{{/|}}lib{{/|}}aix{{/|}}libclang_rt.builtins-powerpc.a" // CHECK-LD32-PTHREAD: "-lpthreads" // CHECK-LD32-PTHREAD: "-lc" // Check powerpc64-ibm-aix7.1.0.0, 64-bit. POSIX thread alias. // RUN: %clang -no-canonical-prefixes %s -### 2>&1 \ +// RUN:-resource-dir=%S/Inputs/resource_dir \ // RUN:-pthreads \ // RUN:-target powerpc64-ibm-aix7.1.0.0 \ // RUN:--sysroot %S/Inputs/aix_ppc_tree \ // RUN: | FileCheck --check-prefix=CHECK-LD64-PTHREAD %s // CHECK-LD64-PTHREAD-NOT: warning: // CHECK-LD64-PTHREAD: {{.*}}clang{{(.exe)?}}" "-cc1" "-triple" "powerpc64-ibm-aix7.1.0.0" +// CHECK-LD64-PTHREAD: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" // CHECK-LD64-PTHREAD: "-isysroot" "[[SYSROOT:[^"]+]]" // CHECK-LD64-PTHREAD: "{{.*}}ld{{(.exe)?}}" // CHECK-LD64
[PATCH] D88182: [clang][driver][AIX] Set compiler-rt as default rtlib
daltenty updated this revision to Diff 294822. daltenty added a comment. - Remove blankline - Fix path seperators in second test as well Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D88182/new/ https://reviews.llvm.org/D88182 Files: clang/lib/Driver/ToolChain.cpp clang/lib/Driver/ToolChains/AIX.cpp clang/lib/Driver/ToolChains/AIX.h clang/test/Driver/aix-ld.c clang/test/Driver/aix-rtlib.c Index: clang/test/Driver/aix-rtlib.c === --- /dev/null +++ clang/test/Driver/aix-rtlib.c @@ -0,0 +1,10 @@ +// Check the default rtlib for AIX. +// RUN: %clang -target powerpc-ibm-aix -print-libgcc-file-name -no-canonical-prefixes \ +// RUN:-resource-dir=%S/Inputs/resource_dir \ +// RUN: | FileCheck -check-prefix=CHECK32 %s +// RUN: %clang -target powerpc64-ibm-aix -print-libgcc-file-name -no-canonical-prefixes \ +// RUN:-resource-dir=%S/Inputs/resource_dir \ +// RUN: | FileCheck -check-prefix=CHECK64 %s + +// CHECK32: resource_dir{{/|\\}}lib{{/|\\}}aix{{/|\\}}libclang_rt.builtins-powerpc.a +// CHECK64: resource_dir{{/|\\}}lib{{/|\\}}aix{{/|\\}}libclang_rt.builtins-powerpc64.a Index: clang/test/Driver/aix-ld.c === --- clang/test/Driver/aix-ld.c +++ clang/test/Driver/aix-ld.c @@ -3,11 +3,13 @@ // Check powerpc-ibm-aix7.1.0.0, 32-bit. // RUN: %clang -no-canonical-prefixes %s -### 2>&1 \ +// RUN:-resource-dir=%S/Inputs/resource_dir \ // RUN:-target powerpc-ibm-aix7.1.0.0 \ // RUN:--sysroot %S/Inputs/aix_ppc_tree \ // RUN: | FileCheck --check-prefix=CHECK-LD32 %s // CHECK-LD32-NOT: warning: // CHECK-LD32: {{.*}}clang{{(.exe)?}}" "-cc1" "-triple" "powerpc-ibm-aix7.1.0.0" +// CHECK-LD32: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" // CHECK-LD32: "-isysroot" "[[SYSROOT:[^"]+]]" // CHECK-LD32: "{{.*}}ld{{(.exe)?}}" // CHECK-LD32-NOT: "-bnso" @@ -17,15 +19,18 @@ // CHECK-LD32-NOT: "[[SYSROOT]]/usr/lib{{/|}}crti.o" // CHECK-LD32: "-L[[SYSROOT]]/usr/lib" // CHECK-LD32-NOT: "-lc++" +// CHECK-LD32: "[[RESOURCE_DIR]]{{/|}}lib{{/|}}aix{{/|}}libclang_rt.builtins-powerpc.a" // CHECK-LD32: "-lc" // Check powerpc64-ibm-aix7.1.0.0, 64-bit. // RUN: %clang -no-canonical-prefixes %s -### 2>&1 \ +// RUN:-resource-dir=%S/Inputs/resource_dir \ // RUN:-target powerpc64-ibm-aix7.1.0.0 \ // RUN:--sysroot %S/Inputs/aix_ppc_tree \ // RUN: | FileCheck --check-prefix=CHECK-LD64 %s // CHECK-LD64-NOT: warning: // CHECK-LD64: {{.*}}clang{{(.exe)?}}" "-cc1" "-triple" "powerpc64-ibm-aix7.1.0.0" +// CHECK-LD64: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" // CHECK-LD64: "-isysroot" "[[SYSROOT:[^"]+]]" // CHECK-LD64: "{{.*}}ld{{(.exe)?}}" // CHECK-LD64-NOT: "-bnso" @@ -35,16 +40,19 @@ // CHECK-LD64-NOT: "[[SYSROOT]]/usr/lib{{/|}}crti_64.o" // CHECK-LD64: "-L[[SYSROOT]]/usr/lib" // CHECK-LD64-NOT: "-lc++" +// CHECK-LD64: "[[RESOURCE_DIR]]{{/|}}lib{{/|}}aix{{/|}}libclang_rt.builtins-powerpc64.a" // CHECK-LD64: "-lc" // Check powerpc-ibm-aix7.1.0.0, 32-bit. Enable POSIX thread support. // RUN: %clang -no-canonical-prefixes %s -### 2>&1 \ +// RUN:-resource-dir=%S/Inputs/resource_dir \ // RUN:-pthread \ // RUN:-target powerpc-ibm-aix7.1.0.0 \ // RUN:--sysroot %S/Inputs/aix_ppc_tree \ // RUN: | FileCheck --check-prefix=CHECK-LD32-PTHREAD %s // CHECK-LD32-PTHREAD-NOT: warning: // CHECK-LD32-PTHREAD: {{.*}}clang{{(.exe)?}}" "-cc1" "-triple" "powerpc-ibm-aix7.1.0.0" +// CHECK-LD32-PTHREAD: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" // CHECK-LD32-PTHREAD: "-isysroot" "[[SYSROOT:[^"]+]]" // CHECK-LD32-PTHREAD: "{{.*}}ld{{(.exe)?}}" // CHECK-LD32-PTHREAD-NOT: "-bnso" @@ -54,17 +62,20 @@ // CHECK-LD32-PTHREAD-NOT: "[[SYSROOT]]/usr/lib{{/|}}crti.o" // CHECK-LD32-PTHREAD: "-L[[SYSROOT]]/usr/lib" // CHECK-LD32-PTHREAD-NOT: "-lc++" +// CHECK-LD32-PTHREAD: "[[RESOURCE_DIR]]{{/|}}lib{{/|}}aix{{/|}}libclang_rt.builtins-powerpc.a" // CHECK-LD32-PTHREAD: "-lpthreads" // CHECK-LD32-PTHREAD: "-lc" // Check powerpc64-ibm-aix7.1.0.0, 64-bit. POSIX thread alias. // RUN: %clang -no-canonical-prefixes %s -### 2>&1 \ +// RUN:-resource-dir=%S/Inputs/resource_dir \ // RUN:-pthreads \ // RUN:-target powerpc64-ibm-aix7.1.0.0 \ // RUN:--sysroot %S/Inputs/aix_ppc_tree \ // RUN: | FileCheck --check-prefix=CHECK-LD64-PTHREAD %s // CHECK-LD64-PTHREAD-NOT: warning: // CHECK-LD64-PTHREAD: {{.*}}clang{{(.exe)?}}" "-cc1" "-triple" "powerpc64-ibm-aix7.1.0.0" +// CHECK-LD64-PTHREAD: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" // CHECK-LD64-PTHREAD: "-isysroot" "[[SYSROOT:[^"]+]]" // CHECK-LD64-PTHREAD: "{{.*}}ld{{(.exe)?}}" // CHECK-LD64-PTHREAD-NOT: "-bnso" @@ -74,17 +85,20 @@ // C
[PATCH] D88182: [clang][driver][AIX] Set compiler-rt as default rtlib
hubert.reinterpretcast accepted this revision. hubert.reinterpretcast added a comment. This revision is now accepted and ready to land. LGTM; thanks. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D88182/new/ https://reviews.llvm.org/D88182 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D88182: [clang][driver][AIX] Set compiler-rt as default rtlib
daltenty updated this revision to Diff 294053. daltenty added a comment. - Fix formating - Fix typos - Replace pattern with windows-friendly directory seperators Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D88182/new/ https://reviews.llvm.org/D88182 Files: clang/lib/Driver/ToolChain.cpp clang/lib/Driver/ToolChains/AIX.cpp clang/lib/Driver/ToolChains/AIX.h clang/test/Driver/aix-ld.c clang/test/Driver/aix-rtlib.c Index: clang/test/Driver/aix-rtlib.c === --- /dev/null +++ clang/test/Driver/aix-rtlib.c @@ -0,0 +1,10 @@ +// Check the default rtlib for AIX. +// RUN: %clang -target powerpc-ibm-aix -print-libgcc-file-name -no-canonical-prefixes \ +// RUN:-resource-dir=%S/Inputs/resource_dir \ +// RUN: | FileCheck -check-prefix=CHECK32 %s +// RUN: %clang -target powerpc64-ibm-aix -print-libgcc-file-name -no-canonical-prefixes \ +// RUN:-resource-dir=%S/Inputs/resource_dir \ +// RUN: | FileCheck -check-prefix=CHECK64 %s + +// CHECK32: resource_dir/lib/aix/libclang_rt.builtins-powerpc.a +// CHECK64: resource_dir/lib/aix/libclang_rt.builtins-powerpc64.a Index: clang/test/Driver/aix-ld.c === --- clang/test/Driver/aix-ld.c +++ clang/test/Driver/aix-ld.c @@ -3,11 +3,13 @@ // Check powerpc-ibm-aix7.1.0.0, 32-bit. // RUN: %clang -no-canonical-prefixes %s -### 2>&1 \ +// RUN:-resource-dir=%S/Inputs/resource_dir \ // RUN:-target powerpc-ibm-aix7.1.0.0 \ // RUN:--sysroot %S/Inputs/aix_ppc_tree \ // RUN: | FileCheck --check-prefix=CHECK-LD32 %s // CHECK-LD32-NOT: warning: // CHECK-LD32: {{.*}}clang{{(.exe)?}}" "-cc1" "-triple" "powerpc-ibm-aix7.1.0.0" +// CHECK-LD32: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" // CHECK-LD32: "-isysroot" "[[SYSROOT:[^"]+]]" // CHECK-LD32: "{{.*}}ld{{(.exe)?}}" // CHECK-LD32-NOT: "-bnso" @@ -17,15 +19,18 @@ // CHECK-LD32-NOT: "[[SYSROOT]]/usr/lib{{/|}}crti.o" // CHECK-LD32: "-L[[SYSROOT]]/usr/lib" // CHECK-LD32-NOT: "-lc++" +// CHECK-LD32: "[[RESOURCE_DIR]]{{/|}}lib{{/|}}aix{{/|}}libclang_rt.builtins-powerpc.a" // CHECK-LD32: "-lc" // Check powerpc64-ibm-aix7.1.0.0, 64-bit. // RUN: %clang -no-canonical-prefixes %s -### 2>&1 \ +// RUN:-resource-dir=%S/Inputs/resource_dir \ // RUN:-target powerpc64-ibm-aix7.1.0.0 \ // RUN:--sysroot %S/Inputs/aix_ppc_tree \ // RUN: | FileCheck --check-prefix=CHECK-LD64 %s // CHECK-LD64-NOT: warning: // CHECK-LD64: {{.*}}clang{{(.exe)?}}" "-cc1" "-triple" "powerpc64-ibm-aix7.1.0.0" +// CHECK-LD64: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" // CHECK-LD64: "-isysroot" "[[SYSROOT:[^"]+]]" // CHECK-LD64: "{{.*}}ld{{(.exe)?}}" // CHECK-LD64-NOT: "-bnso" @@ -35,16 +40,19 @@ // CHECK-LD64-NOT: "[[SYSROOT]]/usr/lib{{/|}}crti_64.o" // CHECK-LD64: "-L[[SYSROOT]]/usr/lib" // CHECK-LD64-NOT: "-lc++" +// CHECK-LD64: "[[RESOURCE_DIR]]{{/|}}lib{{/|}}aix{{/|}}libclang_rt.builtins-powerpc64.a" // CHECK-LD64: "-lc" // Check powerpc-ibm-aix7.1.0.0, 32-bit. Enable POSIX thread support. // RUN: %clang -no-canonical-prefixes %s -### 2>&1 \ +// RUN:-resource-dir=%S/Inputs/resource_dir \ // RUN:-pthread \ // RUN:-target powerpc-ibm-aix7.1.0.0 \ // RUN:--sysroot %S/Inputs/aix_ppc_tree \ // RUN: | FileCheck --check-prefix=CHECK-LD32-PTHREAD %s // CHECK-LD32-PTHREAD-NOT: warning: // CHECK-LD32-PTHREAD: {{.*}}clang{{(.exe)?}}" "-cc1" "-triple" "powerpc-ibm-aix7.1.0.0" +// CHECK-LD32-PTHREAD: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" // CHECK-LD32-PTHREAD: "-isysroot" "[[SYSROOT:[^"]+]]" // CHECK-LD32-PTHREAD: "{{.*}}ld{{(.exe)?}}" // CHECK-LD32-PTHREAD-NOT: "-bnso" @@ -54,17 +62,20 @@ // CHECK-LD32-PTHREAD-NOT: "[[SYSROOT]]/usr/lib{{/|}}crti.o" // CHECK-LD32-PTHREAD: "-L[[SYSROOT]]/usr/lib" // CHECK-LD32-PTHREAD-NOT: "-lc++" +// CHECK-LD32-PTHREAD: "[[RESOURCE_DIR]]{{/|}}lib{{/|}}aix{{/|}}libclang_rt.builtins-powerpc.a" // CHECK-LD32-PTHREAD: "-lpthreads" // CHECK-LD32-PTHREAD: "-lc" // Check powerpc64-ibm-aix7.1.0.0, 64-bit. POSIX thread alias. // RUN: %clang -no-canonical-prefixes %s -### 2>&1 \ +// RUN:-resource-dir=%S/Inputs/resource_dir \ // RUN:-pthreads \ // RUN:-target powerpc64-ibm-aix7.1.0.0 \ // RUN:--sysroot %S/Inputs/aix_ppc_tree \ // RUN: | FileCheck --check-prefix=CHECK-LD64-PTHREAD %s // CHECK-LD64-PTHREAD-NOT: warning: // CHECK-LD64-PTHREAD: {{.*}}clang{{(.exe)?}}" "-cc1" "-triple" "powerpc64-ibm-aix7.1.0.0" +// CHECK-LD64-PTHREAD: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" // CHECK-LD64-PTHREAD: "-isysroot" "[[SYSROOT:[^"]+]]" // CHECK-LD64-PTHREAD: "{{.*}}ld{{(.exe)?}}" // CHECK-LD64-PTHREAD-NOT: "-bnso" @@ -74,17 +85,20 @@ // CHECK-LD64-PTHREAD
[PATCH] D88182: [clang][driver][AIX] Set compiler-rt as default rtlib
hubert.reinterpretcast added inline comments. Comment at: clang/test/Driver/aix-ld.c:215 // CHECK-LD64-NO-DEFAULT-LIBS: {{.*}}clang{{(.exe)?}}" "-cc1" "-triple" "powerpc64-ibm-aix7.1.0.0" +// CHECK-LD64-NO-STD-LIB: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" // CHECK-LD64-NO-DEFAULT-LIBS: "-isysroot" "[[SYSROOT:[^"]+]]" Copy/paste error? Comment at: clang/test/Driver/aix-ld.c:237 // CHECK-LD32-CXX-ARG-ORDER: {{.*}}clang{{.*}}" "-cc1" "-triple" "powerpc-ibm-aix7.1.0.0" +// CHECK-LD32-CXX-ARG-ORDERP: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" // CHECK-LD32-CXX-ARG-ORDER: "-isysroot" "[[SYSROOT:[^"]+]]" Typo? Comment at: clang/test/Driver/aix-ld.c:249 // CHECK-LD32-CXX-ARG-ORDER: "-lc++" +// CHECK-LD32-CXX-ARG-ORDERP: "[[RESOURCE_DIR]]/lib/aix/libclang_rt.builtins-powerpc.a" // CHECK-LD32-CXX-ARG-ORDER: "-lc" Typo? Comment at: clang/test/Driver/aix-rtlib.c:3 +// RUN: %clang -target powerpc-ibm-aix -print-libgcc-file-name -no-canonical-prefixes \ +// RUN:-resource-dir=%S/Inputs/resource_dir | FileCheck -check-prefix=CHECK32 %s +// RUN: %clang -target powerpc64-ibm-aix -print-libgcc-file-name -no-canonical-prefixes \ Remove "hard" tab. Indent to line up the hyphens. Comment at: clang/test/Driver/aix-rtlib.c:5 +// RUN: %clang -target powerpc64-ibm-aix -print-libgcc-file-name -no-canonical-prefixes \ +// RUN:-resource-dir=%S/Inputs/resource_dir | FileCheck -check-prefix=CHECK64 %s + Same. Plus remove extra spaces. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D88182/new/ https://reviews.llvm.org/D88182 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D88182: [clang][driver][AIX] Set compiler-rt as default rtlib
daltenty created this revision. daltenty added reviewers: stevewan, hubert.reinterpretcast, jasonliu, Xiangling_L. Herald added subscribers: cfe-commits, dberris. Herald added a project: clang. daltenty requested review of this revision. Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D88182 Files: clang/lib/Driver/ToolChain.cpp clang/lib/Driver/ToolChains/AIX.cpp clang/lib/Driver/ToolChains/AIX.h clang/test/Driver/aix-ld.c clang/test/Driver/aix-rtlib.c Index: clang/test/Driver/aix-rtlib.c === --- /dev/null +++ clang/test/Driver/aix-rtlib.c @@ -0,0 +1,8 @@ +// Check the default rtlib for AIX. +// RUN: %clang -target powerpc-ibm-aix -print-libgcc-file-name -no-canonical-prefixes \ +// RUN: -resource-dir=%S/Inputs/resource_dir | FileCheck -check-prefix=CHECK32 %s +// RUN: %clang -target powerpc64-ibm-aix -print-libgcc-file-name -no-canonical-prefixes \ +// RUN: -resource-dir=%S/Inputs/resource_dir | FileCheck -check-prefix=CHECK64 %s + +// CHECK32: resource_dir/lib/aix/libclang_rt.builtins-powerpc.a +// CHECK64: resource_dir/lib/aix/libclang_rt.builtins-powerpc64.a Index: clang/test/Driver/aix-ld.c === --- clang/test/Driver/aix-ld.c +++ clang/test/Driver/aix-ld.c @@ -3,11 +3,13 @@ // Check powerpc-ibm-aix7.1.0.0, 32-bit. // RUN: %clang -no-canonical-prefixes %s -### 2>&1 \ +// RUN:-resource-dir=%S/Inputs/resource_dir \ // RUN:-target powerpc-ibm-aix7.1.0.0 \ // RUN:--sysroot %S/Inputs/aix_ppc_tree \ // RUN: | FileCheck --check-prefix=CHECK-LD32 %s // CHECK-LD32-NOT: warning: // CHECK-LD32: {{.*}}clang{{(.exe)?}}" "-cc1" "-triple" "powerpc-ibm-aix7.1.0.0" +// CHECK-LD32: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" // CHECK-LD32: "-isysroot" "[[SYSROOT:[^"]+]]" // CHECK-LD32: "{{.*}}ld{{(.exe)?}}" // CHECK-LD32-NOT: "-bnso" @@ -17,15 +19,18 @@ // CHECK-LD32-NOT: "[[SYSROOT]]/usr/lib{{/|}}crti.o" // CHECK-LD32: "-L[[SYSROOT]]/usr/lib" // CHECK-LD32-NOT: "-lc++" +// CHECK-LD32: "[[RESOURCE_DIR]]/lib/aix/libclang_rt.builtins-powerpc.a" // CHECK-LD32: "-lc" // Check powerpc64-ibm-aix7.1.0.0, 64-bit. // RUN: %clang -no-canonical-prefixes %s -### 2>&1 \ +// RUN:-resource-dir=%S/Inputs/resource_dir \ // RUN:-target powerpc64-ibm-aix7.1.0.0 \ // RUN:--sysroot %S/Inputs/aix_ppc_tree \ // RUN: | FileCheck --check-prefix=CHECK-LD64 %s // CHECK-LD64-NOT: warning: // CHECK-LD64: {{.*}}clang{{(.exe)?}}" "-cc1" "-triple" "powerpc64-ibm-aix7.1.0.0" +// CHECK-LD64: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" // CHECK-LD64: "-isysroot" "[[SYSROOT:[^"]+]]" // CHECK-LD64: "{{.*}}ld{{(.exe)?}}" // CHECK-LD64-NOT: "-bnso" @@ -35,16 +40,19 @@ // CHECK-LD64-NOT: "[[SYSROOT]]/usr/lib{{/|}}crti_64.o" // CHECK-LD64: "-L[[SYSROOT]]/usr/lib" // CHECK-LD64-NOT: "-lc++" +// CHECK-LD64: "[[RESOURCE_DIR]]/lib/aix/libclang_rt.builtins-powerpc64.a" // CHECK-LD64: "-lc" // Check powerpc-ibm-aix7.1.0.0, 32-bit. Enable POSIX thread support. // RUN: %clang -no-canonical-prefixes %s -### 2>&1 \ +// RUN:-resource-dir=%S/Inputs/resource_dir \ // RUN:-pthread \ // RUN:-target powerpc-ibm-aix7.1.0.0 \ // RUN:--sysroot %S/Inputs/aix_ppc_tree \ // RUN: | FileCheck --check-prefix=CHECK-LD32-PTHREAD %s // CHECK-LD32-PTHREAD-NOT: warning: // CHECK-LD32-PTHREAD: {{.*}}clang{{(.exe)?}}" "-cc1" "-triple" "powerpc-ibm-aix7.1.0.0" +// CHECK-LD32-PTHREAD: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" // CHECK-LD32-PTHREAD: "-isysroot" "[[SYSROOT:[^"]+]]" // CHECK-LD32-PTHREAD: "{{.*}}ld{{(.exe)?}}" // CHECK-LD32-PTHREAD-NOT: "-bnso" @@ -54,17 +62,20 @@ // CHECK-LD32-PTHREAD-NOT: "[[SYSROOT]]/usr/lib{{/|}}crti.o" // CHECK-LD32-PTHREAD: "-L[[SYSROOT]]/usr/lib" // CHECK-LD32-PTHREAD-NOT: "-lc++" +// CHECK-LD32-PTHREAD: "[[RESOURCE_DIR]]/lib/aix/libclang_rt.builtins-powerpc.a" // CHECK-LD32-PTHREAD: "-lpthreads" // CHECK-LD32-PTHREAD: "-lc" // Check powerpc64-ibm-aix7.1.0.0, 64-bit. POSIX thread alias. // RUN: %clang -no-canonical-prefixes %s -### 2>&1 \ +// RUN:-resource-dir=%S/Inputs/resource_dir \ // RUN:-pthreads \ // RUN:-target powerpc64-ibm-aix7.1.0.0 \ // RUN:--sysroot %S/Inputs/aix_ppc_tree \ // RUN: | FileCheck --check-prefix=CHECK-LD64-PTHREAD %s // CHECK-LD64-PTHREAD-NOT: warning: // CHECK-LD64-PTHREAD: {{.*}}clang{{(.exe)?}}" "-cc1" "-triple" "powerpc64-ibm-aix7.1.0.0" +// CHECK-LD64-PTHREAD: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" // CHECK-LD64-PTHREAD: "-isysroot" "[[SYSROOT:[^"]+]]" // CHECK-LD64-PTHREAD: "{{.*}}ld{{(.exe)?}}" // CHECK-LD64-PTHREAD-NOT: "-bnso" @@ -74,17 +85,20 @@ // CHECK-LD64-PTHREAD-NOT: "[[SYSROOT]]/usr/lib{{/|}}crti_64.o" // CHECK-LD64-PTHREAD: "-L[[SYSROOT]]/usr/lib" // CHECK-