| // General tests that ld invocations on AIX targets are sane. Note that we use |
| // sysroot to make these tests independent of the host system. |
| |
| // Check powerpc-ibm-aix7.1.0.0, 32-bit. |
| // RUN: %clang %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: --unwindlib=libunwind \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD32 %s |
| // CHECK-LD32-NOT: warning: |
| // CHECK-LD32: "-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" |
| // CHECK-LD32: "-b32" |
| // CHECK-LD32: "-bpT:0x10000000" "-bpD:0x20000000" |
| // CHECK-LD32: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0.o" |
| // CHECK-LD32: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti.o" |
| // CHECK-LD32-NOT: "-lc++" |
| // CHECK-LD32-NOT: "-lc++abi" |
| // CHECK-LD32: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc.a" |
| // CHECK-LD32-NOT: "--as-needed" |
| // CHECK-LD32: "-lunwind" |
| // CHECK-LD32-NOT: "--no-as-needed" |
| // CHECK-LD32-NOT: "-lm" |
| // CHECK-LD32: "-lc" |
| |
| // Check powerpc64-ibm-aix7.1.0.0, 64-bit. |
| // RUN: %clang %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: --unwindlib=libunwind \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD64 %s |
| // CHECK-LD64-NOT: warning: |
| // CHECK-LD64: "-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" |
| // CHECK-LD64: "-b64" |
| // CHECK-LD64: "-bpT:0x100000000" "-bpD:0x110000000" |
| // CHECK-LD64: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0_64.o" |
| // CHECK-LD64: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti_64.o" |
| // CHECK-LD64-NOT: "-lc++" |
| // CHECK-LD64-NOT: "-lc++abi" |
| // CHECK-LD64: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc64.a" |
| // CHECK-LD64-NOT: "--as-needed" |
| // CHECK-LD64: "-lunwind" |
| // CHECK-LD64-NOT: "--no-as-needed" |
| // CHECK-LD64-NOT: "-lm" |
| // CHECK-LD64: "-lc" |
| |
| // Check powerpc-ibm-aix7.1.0.0, 32-bit. Enable POSIX thread support. |
| // RUN: %clang %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: --unwindlib=libunwind \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD32-PTHREAD %s |
| // CHECK-LD32-PTHREAD-NOT: warning: |
| // CHECK-LD32-PTHREAD: "-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" |
| // CHECK-LD32-PTHREAD: "-b32" |
| // CHECK-LD32-PTHREAD: "-bpT:0x10000000" "-bpD:0x20000000" |
| // CHECK-LD32-PTHREAD: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0.o" |
| // CHECK-LD32-PTHREAD: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti.o" |
| // CHECK-LD32-PTHREAD-NOT: "-lc++" |
| // CHECK-LD32-PTHREAD-NOT: "-lc++abi" |
| // CHECK-LD32-PTHREAD: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc.a" |
| // CHECK-LD32-PTHREAD-NOT: "--as-needed" |
| // CHECK-LD32-PTHREAD: "-lunwind" |
| // CHECK-LD32-PTHREAD-NOT: "--no-as-needed" |
| // CHECK-LD32-PTHREAD: "-lpthreads" |
| // CHECK-LD32-PTHREAD-NOT: "-lm" |
| // CHECK-LD32-PTHREAD: "-lc" |
| |
| // Check powerpc64-ibm-aix7.1.0.0, 64-bit. POSIX thread alias. |
| // RUN: %clang %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: --unwindlib=libunwind \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD64-PTHREAD %s |
| // CHECK-LD64-PTHREAD-NOT: warning: |
| // CHECK-LD64-PTHREAD: "-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" |
| // CHECK-LD64-PTHREAD: "-b64" |
| // CHECK-LD64-PTHREAD: "-bpT:0x100000000" "-bpD:0x110000000" |
| // CHECK-LD64-PTHREAD: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0_64.o" |
| // CHECK-LD64-PTHREAD: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti_64.o" |
| // CHECK-LD64-PTHREAD-NOT: "-lc++" |
| // CHECK-LD64-PTHREAD-NOT: "-lc++abi" |
| // CHECK-LD64-PTHREAD: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc64.a" |
| // CHECK-LD64-PTHREAD-NOT: "--as-needed" |
| // CHECK-LD64-PTHREAD: "-lunwind" |
| // CHECK-LD64-PTHREAD-NOT: "--no-as-needed" |
| // CHECK-LD64-PTHREAD: "-lpthreads" |
| // CHECK-LD64-PTHREAD-NOT: "-lm" |
| // CHECK-LD64-PTHREAD: "-lc" |
| |
| // Check powerpc-ibm-aix7.1.0.0, 32-bit. Enable profiling. |
| // RUN: %clang %s -### 2>&1 \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir \ |
| // RUN: -p \ |
| // RUN: --target=powerpc-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: --unwindlib=libunwind \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD32-PROF %s |
| // CHECK-LD32-PROF-NOT: warning: |
| // CHECK-LD32-PROF: "-cc1" "-triple" "powerpc-ibm-aix7.1.0.0" |
| // CHECK-LD32-PROF: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" |
| // CHECK-LD32-PROF: "-isysroot" "[[SYSROOT:[^"]+]]" |
| // CHECK-LD32-PROF: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-LD32-PROF-NOT: "-bnso" |
| // CHECK-LD32-PROF: "-b32" |
| // CHECK-LD32-PROF: "-bpT:0x10000000" "-bpD:0x20000000" |
| // CHECK-LD32-PROF: "[[SYSROOT]]/usr/lib{{/|\\\\}}mcrt0.o" |
| // CHECK-LD32-PROF: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti.o" |
| // CHECK-LD32-PROF-NOT: "-lc++" |
| // CHECK-LD32-PROF-NOT: "-lc++abi" |
| // CHECK-LD32-PROF: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc.a" |
| // CHECK-LD32-PROF-NOT: "--as-needed" |
| // CHECK-LD32-PROF: "-lunwind" |
| // CHECK-LD32-PROF-NOT: "--no-as-needed" |
| // CHECK-LD32-PROF-NOT: "-lm" |
| // CHECK-LD32-PROF: "-lc" |
| // CHECK-LD32-PROF: "-L[[SYSROOT]]/lib/profiled" |
| // CHECK-LD32-PROF: "-L[[SYSROOT]]/usr/lib/profiled" |
| |
| // Check powerpc64-ibm-aix7.1.0.0, 64-bit. Enable profiling. |
| // RUN: %clang %s -### 2>&1 \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir \ |
| // RUN: -p \ |
| // RUN: --target=powerpc64-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: --unwindlib=libunwind \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD64-PROF %s |
| // CHECK-LD64-PROF-NOT: warning: |
| // CHECK-LD64-PROF: "-cc1" "-triple" "powerpc64-ibm-aix7.1.0.0" |
| // CHECK-LD64-PROF: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" |
| // CHECK-LD64-PROF: "-isysroot" "[[SYSROOT:[^"]+]]" |
| // CHECK-LD64-PROF: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-LD64-PROF-NOT: "-bnso" |
| // CHECK-LD64-PROF: "-b64" |
| // CHECK-LD64-PROF: "-bpT:0x100000000" "-bpD:0x110000000" |
| // CHECK-LD64-PROF: "[[SYSROOT]]/usr/lib{{/|\\\\}}mcrt0_64.o" |
| // CHECK-LD64-PROF: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti_64.o" |
| // CHECK-LD64-PROF-NOT: "-lc++" |
| // CHECK-LD64-PROF-NOT: "-lc++abi" |
| // CHECK-LD64-PROF: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc64.a" |
| // CHECK-LD64-PROF-NOT: "--as-needed" |
| // CHECK-LD64-PROF: "-lunwind" |
| // CHECK-LD64-PROF-NOT: "--no-as-needed" |
| // CHECK-LD64-PROF-NOT: "-lm" |
| // CHECK-LD64-PROF: "-lc" |
| // CHECK-LD64-PROF: "-L[[SYSROOT]]/lib/profiled" |
| // CHECK-LD64-PROF: "-L[[SYSROOT]]/usr/lib/profiled |
| |
| // Check powerpc-ibm-aix7.1.0.0, 32-bit. Enable g-profiling. |
| // RUN: %clang %s -### 2>&1 \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir \ |
| // RUN: -pg \ |
| // RUN: --target=powerpc-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: --unwindlib=libunwind \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD32-GPROF %s |
| // CHECK-LD32-GPROF-NOT: warning: |
| // CHECK-LD32-GPROF: "-cc1" "-triple" "powerpc-ibm-aix7.1.0.0" |
| // CHECK-LD32-GPROF: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" |
| // CHECK-LD32-GPROF: "-isysroot" "[[SYSROOT:[^"]+]]" |
| // CHECK-LD32-GPROF: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-LD32-GPROF-NOT: "-bnso" |
| // CHECK-LD32-GPROF: "-b32" |
| // CHECK-LD32-GPROF: "-bpT:0x10000000" "-bpD:0x20000000" |
| // CHECK-LD32-GPROF: "[[SYSROOT]]/usr/lib{{/|\\\\}}gcrt0.o" |
| // CHECK-LD32-GPROF: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti.o" |
| // CHECK-LD32-GPROF-NOT: "-lc++" |
| // CHECK-LD32-GPROF-NOT: "-lc++abi" |
| // CHECK-LD32-GPROF: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc.a" |
| // CHECK-LD32-GPROF-NOT: "--as-needed" |
| // CHECK-LD32-GPROF: "-lunwind" |
| // CHECK-LD32-GPROF-NOT: "--no-as-needed" |
| // CHECK-LD32-GPROF-NOT: "-lm" |
| // CHECK-LD32-GPROF: "-lc" |
| // CHECK-LD32-GPROF: "-L[[SYSROOT]]/lib/profiled" |
| // CHECK-LD32-GPROF: "-L[[SYSROOT]]/usr/lib/profiled" |
| |
| // Check powerpc64-ibm-aix7.1.0.0, 64-bit. Enable g-profiling. |
| // RUN: %clang %s -### 2>&1 \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir \ |
| // RUN: -pg \ |
| // RUN: --target=powerpc64-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: --unwindlib=libunwind \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD64-GPROF %s |
| // CHECK-LD64-GPROF-NOT: warning: |
| // CHECK-LD64-GPROF: "-cc1" "-triple" "powerpc64-ibm-aix7.1.0.0" |
| // CHECK-LD64-GPROF: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" |
| // CHECK-LD64-GPROF: "-isysroot" "[[SYSROOT:[^"]+]]" |
| // CHECK-LD64-GPROF: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-LD64-GPROF-NOT: "-bnso" |
| // CHECK-LD64-GPROF: "-b64" |
| // CHECK-LD64-GPROF: "-bpT:0x100000000" "-bpD:0x110000000" |
| // CHECK-LD64-GPROF: "[[SYSROOT]]/usr/lib{{/|\\\\}}gcrt0_64.o" |
| // CHECK-LD64-GPROF: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti_64.o" |
| // CHECK-LD64-GPROF-NOT: "-lc++" |
| // CHECK-LD64-GPROF-NOT: "-lc++abi" |
| // CHECK-LD64-GPROF: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc64.a" |
| // CHECK-LD64-GPROF-NOT: "--as-needed" |
| // CHECK-LD64-GPROF: "-lunwind" |
| // CHECK-LD64-GPROF-NOT: "--no-as-needed" |
| // CHECK-LD64-GPROF-NOT: "-lm" |
| // CHECK-LD64-GPROF: "-lc" |
| // CHECK-LD64-GPROF: "-L[[SYSROOT]]/lib/profiled" |
| // CHECK-LD64-GPROF: "-L[[SYSROOT]]/usr/lib/profiled" |
| |
| // Check powerpc-ibm-aix7.1.0.0, 32-bit. Static linking. |
| // RUN: %clang %s -### 2>&1 \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir \ |
| // RUN: -static \ |
| // RUN: --target=powerpc-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: --unwindlib=libunwind \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD32-STATIC %s |
| // CHECK-LD32-STATIC-NOT: warning: |
| // CHECK-LD32-STATIC: "-cc1" "-triple" "powerpc-ibm-aix7.1.0.0" |
| // CHECK-LD32-STATIC: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" |
| // CHECK-LD32-STATIC: "-isysroot" "[[SYSROOT:[^"]+]]" |
| // CHECK-LD32-STATIC: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-LD32-STATIC: "-bnso" |
| // CHECK-LD32-STATIC: "-b32" |
| // CHECK-LD32-STATIC: "-bpT:0x10000000" "-bpD:0x20000000" |
| // CHECK-LD32-STATIC: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0.o" |
| // CHECK-LD32-STATIC: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti.o" |
| // CHECK-LD32-STATIC-NOT: "-lc++" |
| // CHECK-LD32-STATIC-NOT: "-lc++abi" |
| // CHECK-LD32-STATIC: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc.a" |
| // CHECK-LD32-STATIC-NOT: "--as-needed" |
| // CHECK-LD32-STATIC-NOT: "-lunwind" |
| // CHECK-LD32-STATIC-NOT: "--no-as-needed" |
| // CHECK-LD32-STATIC-NOT: "-lm" |
| // CHECK-LD32-STATIC: "-lc" |
| |
| // Check powerpc-ibm-aix7.1.0.0, 32-bit. Library search path. |
| // RUN: %clang %s -### 2>&1 \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir \ |
| // RUN: -L%S/Inputs/aix_ppc_tree/powerpc-ibm-aix7.1.0.0 \ |
| // RUN: --target=powerpc-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: --unwindlib=libunwind \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD32-LIBP %s |
| // CHECK-LD32-LIBP-NOT: warning: |
| // CHECK-LD32-LIBP: "-cc1" "-triple" "powerpc-ibm-aix7.1.0.0" |
| // CHECK-LD32-LIBP: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" |
| // CHECK-LD32-LIBP: "-isysroot" "[[SYSROOT:[^"]+]]" |
| // CHECK-LD32-LIBP: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-LD32-LIBP-NOT: "-bnso" |
| // CHECK-LD32-LIBP: "-b32" |
| // CHECK-LD32-LIBP: "-bpT:0x10000000" "-bpD:0x20000000" |
| // CHECK-LD32-LIBP: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0.o" |
| // CHECK-LD32-LIBP: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti.o" |
| // CHECK-LD32-LIBP: "-L[[SYSROOT]]/powerpc-ibm-aix7.1.0.0" |
| // CHECK-LD32-LIBP-NOT: "-lc++" |
| // CHECK-LD32-LIBP-NOT: "-lc++abi" |
| // CHECK-LD32-LIBP: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc.a" |
| // CHECK-LD32-LIBP-NOT: "--as-needed" |
| // CHECK-LD32-LIBP: "-lunwind" |
| // CHECK-LD32-LIBP-NOT: "--no-as-needed" |
| // CHECK-LD32-LIBP-NOT: "-lm" |
| // CHECK-LD32-LIBP: "-lc" |
| |
| // Check powerpc-ibm-aix7.1.0.0, 32-bit. nostdlib. |
| // RUN: %clang %s -### 2>&1 \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir \ |
| // RUN: -nostdlib \ |
| // RUN: -pthread \ |
| // RUN: --target=powerpc-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD32-NO-STD-LIB %s |
| // CHECK-LD32-NO-STD-LIB-NOT: warning: |
| // CHECK-LD32-NO-STD-LIB: "-cc1" "-triple" "powerpc-ibm-aix7.1.0.0" |
| // CHECK-LD32-NO-STD-LIB: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" |
| // CHECK-LD32-NO-STD-LIB: "-isysroot" "[[SYSROOT:[^"]+]]" |
| // CHECK-LD32-NO-STD-LIB: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-LD32-NO-STD-LIB-NOT: "-bnso" |
| // CHECK-LD32-NO-STD-LIB: "-b32" |
| // CHECK-LD32-NO-STD-LIB: "-bpT:0x10000000" "-bpD:0x20000000" |
| // CHECK-LD32-NO-STD-LIB-NOT: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0.o" |
| // CHECK-LD32-NO-STD-LIB-NOT: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti.o" |
| // CHECK-LD32-NO-STD-LIB-NOT: "-lc++" |
| // CHECK-LD32-NO-STD-LIB-NOT: "-lc++abi" |
| // CHECK-LD32-NO-STD-LIB-NOT: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc.a" |
| // CHECK-LD32-NO-STD-LIB-NOT: "--as-needed" |
| // CHECK-LD32-NO-STD-LIB-NOT: "-lunwind" |
| // CHECK-LD32-NO-STD-LIB-NOT: "--no-as-needed" |
| // CHECK-LD32-NO-STD-LIB-NOT: "-lpthreads" |
| // CHECK-LD32-NO-STD-LIB-NOT: "-lm" |
| // CHECK-LD32-NO-STD-LIB-NOT: "-lc" |
| |
| // Check powerpc64-ibm-aix7.1.0.0, 64-bit. nodefaultlibs. |
| // RUN: %clang %s -### 2>&1 \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir \ |
| // RUN: -nodefaultlibs \ |
| // RUN: -pthread \ |
| // RUN: --target=powerpc64-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD64-NO-DEFAULT-LIBS %s |
| // CHECK-LD64-NO-DEFAULT-LIBS-NOT: warning: |
| // CHECK-LD64-NO-DEFAULT-LIBS: "-cc1" "-triple" "powerpc64-ibm-aix7.1.0.0" |
| // CHECK-LD64-NO-DEFAULT-LIBS: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" |
| // CHECK-LD64-NO-DEFAULT-LIBS: "-isysroot" "[[SYSROOT:[^"]+]]" |
| // CHECK-LD64-NO-DEFAULT-LIBS: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-LD64-NO-DEFAULT-LIBS-NOT: "-bnso" |
| // CHECK-LD64-NO-DEFAULT-LIBS: "-b64" |
| // CHECK-LD64-NO-DEFAULT-LIBS: "-bpT:0x100000000" "-bpD:0x110000000" |
| // CHECK-LD64-NO-DEFAULT-LIBS: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0_64.o" |
| // CHECK-LD64-NO-DEFAULT-LIBS: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti_64.o" |
| // CHECK-LD64-NO-DEFAULT-LIBS-NOT: "-lc++" |
| // CHECK-LD64-NO-DEFAULT-LIBS-NOT: "-lc++abi" |
| // CHECK-LD64-NO-DEFAULT-LIBS-NOT: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc64.a" |
| // CHECK-LD64-NO-DEFAULT-LIBS-NOT: "--as-needed" |
| // CHECK-LD64-NO-DEFAULT-LIBS-NOT: "-lunwind" |
| // CHECK-LD64-NO-DEFAULT-LIBS-NOT: "--no-as-needed" |
| // CHECK-LD64-NO-DEFAULT-LIBS-NOT: "-lpthreads" |
| // CHECK-LD64-NO-DEFAULT-LIBS-NOT: "-lm" |
| // CHECK-LD64-NO-DEFAULT-LIBS-NOT: "-lc" |
| |
| // Check powerpc-ibm-aix7.1.0.0, 32-bit. 'bcdtors' and argument order. |
| // RUN: %clang %s 2>&1 -### \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir \ |
| // RUN: -Wl,-bnocdtors \ |
| // RUN: --target=powerpc-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: --unwindlib=libunwind \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD32-ARG-ORDER %s |
| // CHECK-LD32-ARG-ORDER: "-cc1" "-triple" "powerpc-ibm-aix7.1.0.0" |
| // CHECK-LD32-ARG-ORDER: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" |
| // CHECK-LD32-ARG-ORDER: "-isysroot" "[[SYSROOT:[^"]+]]" |
| // CHECK-LD32-ARG-ORDER: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-LD32-ARG-ORDER-NOT: "-bnso" |
| // CHECK-LD32-ARG-ORDER: "-b32" |
| // CHECK-LD32-ARG-ORDER: "-bpT:0x10000000" "-bpD:0x20000000" |
| // CHECK-LD32-ARG-ORDER: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0.o" |
| // CHECK-LD32-ARG-ORDER: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti.o" |
| // CHECK-LD32-ARG-ORDER: "-bcdtors:all:0:s" |
| // CHECK-LD32-ARG-ORDER: "-bnocdtors" |
| // CHECK-LD32-ARG-ORDER-NOT: "-bcdtors:all:0:s" |
| // CHECK-LD32-ARG-ORDER-NOT: "-lc++" |
| // CHECK-LD32-ARG-ORDER-NOT: "-lc++abi" |
| // CHECK-LD32-ARG-ORDER: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc.a" |
| // CHECK-LD32-ARG-ORDER-NOT: "--as-needed" |
| // CHECK-LD32-ARG-ORDER: "-lunwind" |
| // CHECK-LD32-ARG-ORDER-NOT: "--no-as-needed" |
| // CHECK-LD32-ARG-ORDER-NOT: "-lm" |
| // CHECK-LD32-ARG-ORDER: "-lc" |
| |
| // Check powerpc-ibm-aix7.1.0.0, 32-bit. 'bcdtors' and argument order. |
| // RUN: %clangxx %s 2>&1 -### \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir \ |
| // RUN: -Wl,-bnocdtors \ |
| // RUN: --target=powerpc-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: --unwindlib=libunwind \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD32-CXX-ARG-ORDER %s |
| // CHECK-LD32-CXX-ARG-ORDER: "-cc1" "-triple" "powerpc-ibm-aix7.1.0.0" |
| // CHECK-LD32-CXX-ARG-ORDER: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" |
| // CHECK-LD32-CXX-ARG-ORDER: "-isysroot" "[[SYSROOT:[^"]+]]" |
| // CHECK-LD32-CXX-ARG-ORDER: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-LD32-CXX-ARG-ORDER-NOT: "-bnso" |
| // CHECK-LD32-CXX-ARG-ORDER: "-b32" |
| // CHECK-LD32-CXX-ARG-ORDER: "-bpT:0x10000000" "-bpD:0x20000000" |
| // CHECK-LD32-CXX-ARG-ORDER: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0.o" |
| // CHECK-LD32-CXX-ARG-ORDER: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti.o" |
| // CHECK-LD32-CXX-ARG-ORDER: "-bcdtors:all:0:s" |
| // CHECK-LD32-CXX-ARG-ORDER: "-bnocdtors" |
| // CHECK-LD32-CXX-ARG-ORDER-NOT: "-bcdtors:all:0:s" |
| // CHECK-LD32-CXX-ARG-ORDER: "-lc++" |
| // CHECK-LD32-CXX-ARG-ORDER: "-lc++abi" |
| // CHECK-LD32-CXX-ARG-ORDER: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc.a" |
| // CHECK-LD32-CXX-ARG-ORDER-NOT: "--as-needed" |
| // CHECK-LD32-CXX-ARG-ORDER: "-lunwind" |
| // CHECK-LD32-CXX-ARG-ORDER-NOT: "--no-as-needed" |
| // CHECK-LD32-CXX-ARG-ORDER: "-lm" |
| // CHECK-LD32-CXX-ARG-ORDER: "-lc" |
| |
| // Check powerpc-ibm-aix7.1.0.0, 32-bit. lc++ and lc order. |
| // RUN: %clangxx %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: --unwindlib=libunwind \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD32-CXX-ARG-LCXX %s |
| // CHECK-LD32-CXX-ARG-LCXX: "-cc1" "-triple" "powerpc-ibm-aix7.1.0.0" |
| // CHECK-LD32-CXX-ARG-LCXX: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" |
| // CHECK-LD32-CXX-ARG-LCXX: "-isysroot" "[[SYSROOT:[^"]+]]" |
| // CHECK-LD32-CXX-ARG-LCXX: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-LD32-CXX-ARG-LCXX: "-b32" |
| // CHECK-LD32-CXX-ARG-LCXX: "-bpT:0x10000000" "-bpD:0x20000000" |
| // CHECK-LD32-CXX-ARG-LCXX: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0.o" |
| // CHECK-LD32-CXX-ARG-LCXX: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti.o" |
| // CHECK-LD32-CXX-ARG-LCXX: "-lc++" |
| // CHECK-LD32-CXX-ARG-LCXX: "-lc++abi" |
| // CHECK-LD32-CXX-ARG-LCXX: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc.a" |
| // CHECK-LD32-CXX-ARG-LCXX-NOT: "--as-needed" |
| // CHECK-LD32-CXX-ARG-LCXX: "-lunwind" |
| // CHECK-LD32-CXX-ARG-LCXX-NOT: "--no-as-needed" |
| // CHECK-LD32-CXX-ARG-LCXX: "-lm" |
| // CHECK-LD32-CXX-ARG-LCXX: "-lc" |
| |
| // Check powerpc64-ibm-aix7.1.0.0, 64-bit. lc++ and lc order. |
| // RUN: %clangxx %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: --unwindlib=libunwind \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD64-CXX-ARG-LCXX %s |
| // CHECK-LD64-CXX-ARG-LCXX: "-cc1" "-triple" "powerpc64-ibm-aix7.1.0.0" |
| // CHECK-LD64-CXX-ARG-LCXX: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" |
| // CHECK-LD64-CXX-ARG-LCXX: "-isysroot" "[[SYSROOT:[^"]+]]" |
| // CHECK-LD64-CXX-ARG-LCXX: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-LD64-CXX-ARG-LCXX: "-b64" |
| // CHECK-LD64-CXX-ARG-LCXX: "-bpT:0x100000000" "-bpD:0x110000000" |
| // CHECK-LD64-CXX-ARG-LCXX: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0_64.o" |
| // CHECK-LD64-CXX-ARG-LCXX: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti_64.o" |
| // CHECK-LD64-CXX-ARG-LCXX: "-lc++" |
| // CHECK-LD64-CXX-ARG-LCXX: "-lc++abi" |
| // CHECK-LD64-CXX-ARG-LCXX: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc64.a" |
| // CHECK-LD64-CXX-ARG-LCXX-NOT: "--as-needed" |
| // CHECK-LD64-CXX-ARG-LCXX: "-lunwind" |
| // CHECK-LD64-CXX-ARG-LCXX-NOT: "--no-as-needed" |
| // CHECK-LD64-CXX-ARG-LCXX: "-lm" |
| // CHECK-LD64-CXX-ARG-LCXX: "-lc" |
| |
| // Check powerpc-ibm-aix7.1.0.0, 32-bit. -nodefaultlibs. |
| // RUN: %clangxx %s 2>&1 -### \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir \ |
| // RUN: -nodefaultlibs \ |
| // RUN: --target=powerpc-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: --unwindlib=libunwind \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD32-NODEFLIB-LCXX %s |
| // CHECK-LD32-NODEFLIB-LCXX: "-cc1" "-triple" "powerpc-ibm-aix7.1.0.0" |
| // CHECK-LD32-NODEFLIB-LCXX: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" |
| // CHECK-LD32-NODEFLIB-LCXX: "-isysroot" "[[SYSROOT:[^"]+]]" |
| // CHECK-LD32-NODEFLIB-LCXX: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-LD32-NODEFLIB-LCXX: "-b32" |
| // CHECK-LD32-NODEFLIB-LCXX: "-bpT:0x10000000" "-bpD:0x20000000" |
| // CHECK-LD32-NODEFLIB-LCXX: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0.o" |
| // CHECK-LD32-NODEFLIB-LCXX: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti.o" |
| // CHECK-LD32-NODEFLIB-LCXX-NOT: "-lc++" |
| // CHECK-LD32-NODEFLIB-LCXX-NOT: "-lc++abi" |
| // CHECK-LD32-NODEFLIB-LCXX-NOT: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc.a" |
| // CHECK-LD32-NODEFLIB-LCXX-NOT: "--as-needed" |
| // CHECK-LD32-NODEFLIB-LCXX-NOT: "-lunwind" |
| // CHECK-LD32-NODEFLIB-LCXX-NOT: "--no-as-needed" |
| // CHECK-LD32-NODEFLIB-LCXX-NOT: "-lm" |
| // CHECK-LD32-NODEFLIB-LCXX-NOT: "-lc" |
| |
| // Check powerpc64-ibm-aix7.1.0.0, 64-bit. -nodefaultlibs. |
| // RUN: %clangxx %s 2>&1 -### \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir \ |
| // RUN: -nodefaultlibs \ |
| // RUN: --target=powerpc64-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: --unwindlib=libunwind \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD64-NODEFLIB-LCXX %s |
| // CHECK-LD64-NODEFLIB-LCXX: "-cc1" "-triple" "powerpc64-ibm-aix7.1.0.0" |
| // CHECK-LD64-NODEFLIB-LCXX: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" |
| // CHECK-LD64-NODEFLIB-LCXX: "-isysroot" "[[SYSROOT:[^"]+]]" |
| // CHECK-LD64-NODEFLIB-LCXX: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-LD64-NODEFLIB-LCXX: "-b64" |
| // CHECK-LD64-NODEFLIB-LCXX: "-bpT:0x100000000" "-bpD:0x110000000" |
| // CHECK-LD64-NODEFLIB-LCXX: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0_64.o" |
| // CHECK-LD64-NODEFLIB-LCXX: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti_64.o" |
| // CHECK-LD64-NODEFLIB-LCXX-NOT: "-lc++" |
| // CHECK-LD64-NODEFLIB-LCXX-NOT: "-lc++abi" |
| // CHECK-LD64-NODEFLIB-LCXX-NOT: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc64.a" |
| // CHECK-LD64-NODEFLIB-LCXX-NOT: "--as-needed" |
| // CHECK-LD64-NODEFLIB-LCXX-NOT: "-lunwind" |
| // CHECK-LD64-NODEFLIB-LCXX-NOT: "--no-as-needed" |
| // CHECK-LD64-NODEFLIB-LCXX-NOT: "-lm" |
| // CHECK-LD64-NODEFLIB-LCXX-NOT: "-lc" |
| |
| // Check powerpc-ibm-aix7.1.0.0, 32-bit. -nostdlib. |
| // RUN: %clangxx %s 2>&1 -### \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir \ |
| // RUN: -nostdlib \ |
| // RUN: --target=powerpc-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: --unwindlib=libunwind \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD32-NOSTDLIB-LCXX %s |
| // CHECK-LD32-NOSTDLIB-LCXX: "-cc1" "-triple" "powerpc-ibm-aix7.1.0.0" |
| // CHECK-LD32-NOSTDLIB-LCXX: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" |
| // CHECK-LD32-NOSTDLIB-LCXX: "-isysroot" "[[SYSROOT:[^"]+]]" |
| // CHECK-LD32-NOSTDLIB-LCXX: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-LD32-NOSTDLIB-LCXX: "-b32" |
| // CHECK-LD32-NOSTDLIB-LCXX: "-bpT:0x10000000" "-bpD:0x20000000" |
| // CHECK-LD32-NOSTDLIB-LCXX-NOT: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0.o" |
| // CHECK-LD32-NOSTDLIB-LCXX-NOT: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti.o" |
| // CHECK-LD32-NOSTDLIB-LCXX-NOT: "-lc++" |
| // CHECK-LD32-NOSTDLIB-LCXX-NOT: "-lc++abi" |
| // CHECK-LD32-NOSTDLIB-LCXX-NOT: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc.a" |
| // CHECK-LD32-NOSTDLIB-LCXX-NOT: "--as-needed" |
| // CHECK-LD32-NOSTDLIB-LCXX-NOT: "-lunwind" |
| // CHECK-LD32-NOSTDLIB-LCXX-NOT: "--no-as-needed" |
| // CHECK-LD32-NOSTDLIB-LCXX-NOT: "-lm" |
| // CHECK-LD32-NOSTDLIB-LCXX-NOT: "-lc" |
| |
| // Check powerpc64-ibm-aix7.1.0.0, 64-bit. -nostdlib. |
| // RUN: %clangxx %s 2>&1 -### \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir \ |
| // RUN: -nostdlib \ |
| // RUN: --target=powerpc64-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: --unwindlib=libunwind \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD64-NOSTDLIB-LCXX %s |
| // CHECK-LD64-NOSTDLIB-LCXX: "-cc1" "-triple" "powerpc64-ibm-aix7.1.0.0" |
| // CHECK-LD64-NOSTDLIB-LCXX: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" |
| // CHECK-LD64-NOSTDLIB-LCXX: "-isysroot" "[[SYSROOT:[^"]+]]" |
| // CHECK-LD64-NOSTDLIB-LCXX: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-LD64-NOSTDLIB-LCXX: "-b64" |
| // CHECK-LD64-NOSTDLIB-LCXX: "-bpT:0x100000000" "-bpD:0x110000000" |
| // CHECK-LD64-NOSTDLIB-LCXX-NOT: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0_64.o" |
| // CHECK-LD64-NOSTDLIB-LCXX-NOT: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti_64.o" |
| // CHECK-LD64-NOSTDLIB-LCXX-NOT: "-lc++" |
| // CHECK-LD64-NOSTDLIB-LCXX-NOT: "-lc++abi" |
| // CHECK-LD64-NOSTDLIB-LCXX-NOT: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc64.a" |
| // CHECK-LD64-NOSTDLIB-LCXX-NOT: "--as-needed" |
| // CHECK-LD64-NOSTDLIB-LCXX-NOT: "-lunwind" |
| // CHECK-LD64-NOSTDLIB-LCXX-NOT: "--no-as-needed" |
| // CHECK-LD64-NOSTDLIB-LCXX-NOT: "-lm" |
| // CHECK-LD64-NOSTDLIB-LCXX-NOT: "-lc" |
| |
| // Check powerpc-ibm-aix7.1.0.0, 32-bit. -nostdlib++. |
| // Note: crti is still linked for initialization/finalization functionality. |
| // RUN: %clangxx %s 2>&1 -### \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir \ |
| // RUN: -nostdlib++ \ |
| // RUN: --target=powerpc-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: --unwindlib=libunwind \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD32-NOSTDLIBXX-LCXX %s |
| // CHECK-LD32-NOSTDLIBXX-LCXX: "-cc1" "-triple" "powerpc-ibm-aix7.1.0.0" |
| // CHECK-LD32-NOSTDLIBXX-LCXX: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" |
| // CHECK-LD32-NOSTDLIBXX-LCXX: "-isysroot" "[[SYSROOT:[^"]+]]" |
| // CHECK-LD32-NOSTDLIBXX-LCXX: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-LD32-NOSTDLIBXX-LCXX: "-b32" |
| // CHECK-LD32-NOSTDLIBXX-LCXX: "-bpT:0x10000000" "-bpD:0x20000000" |
| // CHECK-LD32-NOSTDLIBXX-LCXX: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0.o" |
| // CHECK-LD32-NOSTDLIBXX-LCXX: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti.o" |
| // CHECK-LD32-NOSTDLIBXX-LCXX-NOT: "-lc++" |
| // CHECK-LD32-NOSTDLIBXX-LCXX-NOT: "-lc++abi" |
| // CHECK-LD32-NOSTDLIBXX-LCXX: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc.a" |
| // CHECK-LD32-NOSTDLIBXX-LCXX-NOT: "--as-needed" |
| // CHECK-LD32-NOSTDLIBXX-LCXX: "-lunwind" |
| // CHECK-LD32-NOSTDLIBXX-LCXX-NOT: "--no-as-needed" |
| // CHECK-LD32-NOSTDLIBXX-LCXX: "-lm" |
| // CHECK-LD32-NOSTDLIBXX-LCXX: "-lc" |
| |
| // Check powerpc64-ibm-aix7.1.0.0, 64-bit. -nostdlib++. |
| // RUN: %clangxx %s 2>&1 -### \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir \ |
| // RUN: -nostdlib++ \ |
| // RUN: --target=powerpc64-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: --unwindlib=libunwind \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD64-NOSTDLIBXX-LCXX %s |
| // CHECK-LD64-NOSTDLIBXX-LCXX: "-cc1" "-triple" "powerpc64-ibm-aix7.1.0.0" |
| // CHECK-LD64-NOSTDLIBXX-LCXX: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" |
| // CHECK-LD64-NOSTDLIBXX-LCXX: "-isysroot" "[[SYSROOT:[^"]+]]" |
| // CHECK-LD64-NOSTDLIBXX-LCXX: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-LD64-NOSTDLIBXX-LCXX: "-b64" |
| // CHECK-LD64-NOSTDLIBXX-LCXX: "-bpT:0x100000000" "-bpD:0x110000000" |
| // CHECK-LD64-NOSTDLIBXX-LCXX: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0_64.o" |
| // CHECK-LD64-NOSTDLIBXX-LCXX: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti_64.o" |
| // CHECK-LD64-NOSTDLIBXX-LCXX-NOT: "-lc++" |
| // CHECK-LD64-NOSTDLIBXX-LCXX-NOT: "-lc++abi" |
| // CHECK-LD64-NOSTDLIBXX-LCXX: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc64.a" |
| // CHECK-LD64-NOSTDLIBXX-LCXX-NOT: "--as-needed" |
| // CHECK-LD64-NOSTDLIBXX-LCXX: "-lunwind" |
| // CHECK-LD64-NOSTDLIBXX-LCXX-NOT: "--no-as-needed" |
| // CHECK-LD64-NOSTDLIBXX-LCXX: "-lm" |
| // CHECK-LD64-NOSTDLIBXX-LCXX: "-lc" |
| |
| // Check powerpc64-ibm-aix7.1.0.0, 32-bit. -nostartfiles. |
| // RUN: %clangxx %s 2>&1 -### \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir \ |
| // RUN: -nostartfiles \ |
| // RUN: --target=powerpc-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: --unwindlib=libunwind \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD32-NOSTARTFILES-LCXX %s |
| // CHECK-LD32-NOSTARTFILES-LCXX: "-cc1" "-triple" "powerpc-ibm-aix7.1.0.0" |
| // CHECK-LD32-NOSTARTFILES-LCXX: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" |
| // CHECK-LD32-NOSTARTFILES-LCXX: "-isysroot" "[[SYSROOT:[^"]+]]" |
| // CHECK-LD32-NOSTARTFILES-LCXX: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-LD32-NOSTARTFILES-LCXX: "-b32" |
| // CHECK-LD32-NOSTARTFILES-LCXX: "-bpT:0x10000000" "-bpD:0x20000000" |
| // CHECK-LD32-NOSTARTFILES-LCXX-NOT: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0.o" |
| // CHECK-LD32-NOSTARTFILES-LCXX-NOT: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti.o" |
| // CHECK-LD32-NOSTARTFILES-LCXX: "-lc++" |
| // CHECK-LD32-NOSTARTFILES-LCXX: "-lc++abi" |
| // CHECK-LD32-NOSTARTFILES-LCXX: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc.a" |
| // CHECK-LD32-NOSTARTFILES-LCXX-NOT: "--as-needed" |
| // CHECK-LD32-NOSTARTFILES-LCXX: "-lunwind" |
| // CHECK-LD32-NOSTARTFILES-LCXX-NOT: "--no-as-needed" |
| // CHECK-LD32-NOSTARTFILES-LCXX: "-lm" |
| // CHECK-LD32-NOSTARTFILES-LCXX: "-lc" |
| |
| // Check powerpc64-ibm-aix7.1.0.0, 64-bit. -nostartfiles. |
| // RUN: %clangxx %s 2>&1 -### \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir \ |
| // RUN: -nostartfiles \ |
| // RUN: --target=powerpc-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: --unwindlib=libunwind \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD32-NOSTARTFILES-LCXX %s |
| // CHECK-LD64-NOSTARTFILES-LCXX: "-cc1" "-triple" "powerpc64-ibm-aix7.1.0.0" |
| // CHECK-LD64-NOSTARTFILES-LCXX: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" |
| // CHECK-LD64-NOSTARTFILES-LCXX: "-isysroot" "[[SYSROOT:[^"]+]]" |
| // CHECK-LD64-NOSTARTFILES-LCXX: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-LD64-NOSTARTFILES-LCXX: "-b64" |
| // CHECK-LD64-NOSTARTFILES-LCXX: "-bpT:0x100000000" "-bpD:0x110000000" |
| // CHECK-LD64-NOSTARTFILES-LCXX-NOT: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0_64.o" |
| // CHECK-LD64-NOSTARTFILES-LCXX-NOT: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti_64.o" |
| // CHECK-LD64-NOSTARTFILES-LCXX: "-lc++" |
| // CHECK-LD64-NOSTARTFILES-LCXX: "-lc++abi" |
| // CHECK-LD64-NOSTARTFILES-LCXX: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc64.a" |
| // CHECK-LD64-NOSTARTFILES-LCXX-NOT: "--as-needed" |
| // CHECK-LD64-NOSTARTFILES-LCXX: "-lunwind" |
| // CHECK-LD64-NOSTARTFILES-LCXX-NOT: "--no-as-needed" |
| // CHECK-LD64-NOSTARTFILES-LCXX: "-lm" |
| // CHECK-LD64-NOSTARTFILES-LCXX: "-lc" |
| |
| // Check powerpc-ibm-aix7.1.0.0, 32-bit. -stdlib=libstdc++ invokes fatal error. |
| // RUN: not --crash %clangxx %s 2>&1 -### \ |
| // RUN: --target=powerpc-ibm-aix7.1.0.0 \ |
| // RUN: -stdlib=libstdc++ -nostdinc++ \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD-LIBSTDCXX %s |
| |
| // Check powerpc64-ibm-aix7.1.0.0, 64-bit. -stdlib=libstdc++ invokes fatal error. |
| // RUN: not --crash %clangxx %s 2>&1 -### \ |
| // RUN: --target=powerpc64-ibm-aix7.1.0.0 \ |
| // RUN: -stdlib=libstdc++ -nostdinc++ \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD-LIBSTDCXX %s |
| // CHECK-LD-LIBSTDCXX: LLVM ERROR: linking libstdc++ unimplemented on AIX |
| |
| // Check powerpc-ibm-aix7.1.0.0, 32-bit. -shared. |
| // RUN: %clangxx -x c++ %s 2>&1 -### \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir -shared \ |
| // RUN: --target=powerpc-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: --unwindlib=libunwind \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD32-SHARED %s |
| |
| // Check powerpc-ibm-aix7.1.0.0, 32-bit. -shared (with exp option strings in other opt). |
| // RUN: %clangxx -x c++ %s 2>&1 -### \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir -shared \ |
| // RUN: --target=powerpc-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: --unwindlib=libunwind \ |
| // RUN: -Wl,-Z/expall/expfull/a-bE:/a-bexport:/ \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD32-SHARED %s |
| |
| // CHECK-LD32-SHARED: "-cc1" "-triple" "powerpc-ibm-aix7.1.0.0" |
| // CHECK-LD32-SHARED: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" |
| // CHECK-LD32-SHARED: "-isysroot" "[[SYSROOT:[^"]+]]" |
| // CHECK-LD32-SHARED: "{{.*}}llvm-nm" |
| // CHECK-LD32-SHARED: "--export-symbols" |
| // CHECK-LD32-SHARED: "-X" "32" |
| // CHECK-LD32-SHARED: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-LD32-SHARED: "-bM:SRE" |
| // CHECK-LD32-SHARED: "-bnoentry" |
| // CHECK-LD32-SHARED: "-b32" |
| // CHECK-LD32-SHARED: "-bpT:0x10000000" "-bpD:0x20000000" |
| // CHECK-LD32-SHARED-NOT: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0.o" |
| // CHECK-LD32-SHARED-NOT: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti.o" |
| // CHECK-LD32-SHARED: "-lc++" |
| // CHECK-LD32-SHARED: "-lc++abi" |
| // CHECK-LD32-SHARED: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc.a" |
| // CHECK-LD32-SHARED-NOT: "--as-needed" |
| // CHECK-LD32-SHARED: "-lunwind" |
| // CHECK-LD32-SHARED-NOT: "--no-as-needed" |
| // CHECK-LD32-SHARED: "-lm" |
| // CHECK-LD32-SHARED: "-lc" |
| |
| // Check powerpc-ibm-aix7.1.0.0, 32-bit. -shared with export list. |
| // RUN: %clangxx -x c++ %s 2>&1 -### \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir -shared \ |
| // RUN: --target=powerpc-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: -Wl,-bE:input.exp \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD32-SHARED-EXPORTS %s |
| |
| // Check powerpc-ibm-aix7.1.0.0, 32-bit. -shared with export list (no -Wl, variant). |
| // RUN: %clangxx -x c++ %s 2>&1 -### \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir -shared \ |
| // RUN: --target=powerpc-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: -bE:input.exp \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD32-SHARED-EXPORTS %s |
| |
| // Check powerpc-ibm-aix7.1.0.0, 32-bit. -shared with export list (-Xlinker variant). |
| // RUN: %clangxx -x c++ %s 2>&1 -### \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir -shared \ |
| // RUN: --target=powerpc-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: -Xlinker -bE:input.exp \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD32-SHARED-EXPORTS %s |
| |
| // CHECK-LD32-SHARED-EXPORTS: "-cc1" "-triple" "powerpc-ibm-aix7.1.0.0" |
| // CHECK-LD32-SHARED-EXPORTS: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" |
| // CHECK-LD32-SHARED-EXPORTS: "-isysroot" "[[SYSROOT:[^"]+]]" |
| // CHECK-LD32-SHARED-EXPORTS-NOT: "{{.*}}llvm-nm" |
| // CHECK-LD32-SHARED-EXPORTS-NOT: "-X" |
| // CHECK-LD32-SHARED-EXPORTS-NOT: "32" |
| // CHECK-LD32-SHARED-EXPORTS: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-LD32-SHARED-EXPORTS: "-bM:SRE" |
| // CHECK-LD32-SHARED-EXPORTS: "-bnoentry" |
| // CHECK-LD32-SHARED-EXPORTS: "-b32" |
| // CHECK-LD32-SHARED-EXPORTS: "-bpT:0x10000000" "-bpD:0x20000000" |
| // CHECK-LD32-SHARED-EXPORTS-NOT: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0.o" |
| // CHECK-LD32-SHARED-EXPORTS-NOT: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti.o" |
| // CHECK-LD32-SHARED-EXPORTS: "-b{{(" ")?}}E:input.exp" |
| // CHECK-LD32-SHARED-EXPORTS-NOT: "-bE:{{[^"]+}}" |
| // CHECK-LD32-SHARED-EXPORTS: "-lc++" |
| // CHECK-LD32-SHARED-EXPORTS: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc.a" |
| // CHECK-LD32-SHARED-EXPORTS: "-lm" |
| // CHECK-LD32-SHARED-EXPORTS: "-lc" |
| |
| // Check powerpc64-ibm-aix7.1.0.0, 64-bit. -shared. |
| // RUN: %clangxx -x c++ %s 2>&1 -### \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir -shared \ |
| // RUN: --target=powerpc64-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: --unwindlib=libunwind \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD64-SHARED %s |
| // CHECK-LD64-SHARED: "-cc1" "-triple" "powerpc64-ibm-aix7.1.0.0" |
| // CHECK-LD64-SHARED: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" |
| // CHECK-LD64-SHARED: "-isysroot" "[[SYSROOT:[^"]+]]" |
| //CHECK-LD64-SHARED: "{{.*}}llvm-nm" |
| // CHECK-LD64-SHARED: "--export-symbols" |
| // CHECK-LD64-SHARED: "-X" "64" |
| // CHECK-LD64-SHARED: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-LD64-SHARED: "-bM:SRE" |
| // CHECK-LD64-SHARED: "-bnoentry" |
| // CHECK-LD64-SHARED: "-b64" |
| // CHECK-LD64-SHARED: "-bpT:0x100000000" "-bpD:0x110000000" |
| // CHECK-LD64-SHARED-NOT: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0_64.o" |
| // CHECK-LD64-SHARED-NOT: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti_64.o" |
| // CHECK-LD64-SHARED: "-lc++" |
| // CHECK-LD64-SHARED: "-lc++abi" |
| // CHECK-LD64-SHARED: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc64.a" |
| // CHECK-LD64-SHARED-NOT: "--as-needed" |
| // CHECK-LD64-SHARED: "-lunwind" |
| // CHECK-LD64-SHARED-NOT: "--no-as-needed" |
| // CHECK-LD64-SHARED: "-lm" |
| // CHECK-LD64-SHARED: "-lc" |
| |
| // Check powerpc-ibm-aix7.1.0.0, 32-bit. -fno-exceptions. |
| // RUN: %clangxx %s 2>&1 -### \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir \ |
| // RUN: -fno-exceptions \ |
| // RUN: --target=powerpc-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD32-NOEXCEPTIONS %s |
| // CHECK-LD32-NOEXCEPTIONS: "-cc1" "-triple" "powerpc-ibm-aix7.1.0.0" |
| // CHECK-LD32-NOEXCEPTIONS: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" |
| // CHECK-LD32-NOEXCEPTIONS: "-isysroot" "[[SYSROOT:[^"]+]]" |
| // CHECK-LD32-NOEXCEPTIONS: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-LD32-NOEXCEPTIONS: "-b32" |
| // CHECK-LD32-NOEXCEPTIONS: "-bpT:0x10000000" "-bpD:0x20000000" |
| // CHECK-LD32-NOEXCEPTIONS: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0.o" |
| // CHECK-LD32-NOEXCEPTIONS: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti.o" |
| // CHECK-LD32-NOEXCEPTIONS: "-lc++" |
| // CHECK-LD32-NOEXCEPTIONS: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc.a" |
| // CHECK-LD32-NOEXCEPTIONS: "-lm" |
| // CHECK-LD32-NOEXCEPTIONS: "-lc" |
| |
| // Check powerpc64-ibm-aix7.1.0.0, 64-bit. -shared with export list. |
| // RUN: %clangxx -x c++ %s 2>&1 -### \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir -shared \ |
| // RUN: --target=powerpc64-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: -Wl,-bE:input.exp \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD64-SHARED-EXPORTS %s |
| |
| // Check powerpc64-ibm-aix7.1.0.0, 64-bit. -shared with export list (no -Wl, variant). |
| // RUN: %clangxx -x c++ %s 2>&1 -### \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir -shared \ |
| // RUN: --target=powerpc64-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: -bE:input.exp \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD64-SHARED-EXPORTS %s |
| |
| // Check powerpc64-ibm-aix7.1.0.0, 64-bit. -shared with export list (-Xlinker variant). |
| // RUN: %clangxx -x c++ %s 2>&1 -### \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir -shared \ |
| // RUN: --target=powerpc64-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: -Xlinker -bE:input.exp \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD64-SHARED-EXPORTS %s |
| |
| // CHECK-LD64-SHARED-EXPORTS: "-cc1" "-triple" "powerpc64-ibm-aix7.1.0.0" |
| // CHECK-LD64-SHARED-EXPORTS: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" |
| // CHECK-LD64-SHARED-EXPORTS: "-isysroot" "[[SYSROOT:[^"]+]]" |
| // CHECK-LD64-SHARED-EXPORTS-NOT: "{{.*}}llvm-nm" |
| // CHECK-LD64-SHARED-EXPORTS-NOT: "-X" |
| // CHECK-LD64-SHARED-EXPORTS-NOT: "64" |
| // CHECK-LD64-SHARED-EXPORTS: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-LD64-SHARED-EXPORTS: "-bM:SRE" |
| // CHECK-LD64-SHARED-EXPORTS: "-bnoentry" |
| // CHECK-LD64-SHARED-EXPORTS: "-b64" |
| // CHECK-LD64-SHARED-EXPORTS: "-bpT:0x100000000" "-bpD:0x110000000" |
| // CHECK-LD64-SHARED-EXPORTS-NOT: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0_64.o" |
| // CHECK-LD64-SHARED-EXPORTS-NOT: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti_64.o" |
| // CHECK-LD64-SHARED-EXPORTS: "-b{{(" ")?}}E:input.exp" |
| // CHECK-LD64-SHARED-EXPORTS-NOT: "-bE:{{[^"]+}}" |
| // CHECK-LD64-SHARED-EXPORTS: "-lc++" |
| // CHECK-LD64-SHARED-EXPORTS: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc64.a" |
| // CHECK-LD64-SHARED-EXPORTS: "-lm" |
| // CHECK-LD64-SHARED-EXPORTS: "-lc" |
| |
| // Check powerpc64-ibm-aix7.1.0.0, 64-bit. -shared with alternate export list. |
| // RUN: %clangxx -x c++ %s 2>&1 -### \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir -shared \ |
| // RUN: --target=powerpc64-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: -Wl,-bexport:input.exp \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD64-SHARED-EXPORTS-ALT %s |
| |
| // Check powerpc64-ibm-aix7.1.0.0, 64-bit. -shared with alternate export list (no -Wl, variant). |
| // RUN: %clangxx -x c++ %s 2>&1 -### \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir -shared \ |
| // RUN: --target=powerpc64-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: -bexport:input.exp \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD64-SHARED-EXPORTS-ALT %s |
| |
| // Check powerpc64-ibm-aix7.1.0.0, 64-bit. -shared with alternate export list (-Xlinker variant). |
| // RUN: %clangxx -x c++ %s 2>&1 -### \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir -shared \ |
| // RUN: --target=powerpc64-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: -Xlinker -bexport:input.exp \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD64-SHARED-EXPORTS-ALT %s |
| |
| // CHECK-LD64-SHARED-EXPORTS-ALT: "-cc1" "-triple" "powerpc64-ibm-aix7.1.0.0" |
| // CHECK-LD64-SHARED-EXPORTS-ALT: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" |
| // CHECK-LD64-SHARED-EXPORTS-ALT: "-isysroot" "[[SYSROOT:[^"]+]]" |
| // CHECK-LD64-SHARED-EXPORTS-ALT-NOT: "{{.*}}llvm-nm" |
| // CHECK-LD64-SHARED-EXPORTS-ALT-NOT: "-X" |
| // CHECK-LD64-SHARED-EXPORTS-ALT-NOT: "64" |
| // CHECK-LD64-SHARED-EXPORTS-ALT: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-LD64-SHARED-EXPORTS-ALT: "-bM:SRE" |
| // CHECK-LD64-SHARED-EXPORTS-ALT: "-bnoentry" |
| // CHECK-LD64-SHARED-EXPORTS-ALT: "-b64" |
| // CHECK-LD64-SHARED-EXPORTS-ALT: "-bpT:0x100000000" "-bpD:0x110000000" |
| // CHECK-LD64-SHARED-EXPORTS-ALT-NOT: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0_64.o" |
| // CHECK-LD64-SHARED-EXPORTS-ALT-NOT: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti_64.o" |
| // CHECK-LD64-SHARED-EXPORTS-ALT: "-b{{(" ")?}}export:input.exp" |
| // CHECK-LD64-SHARED-EXPORTS-ALT-NOT: "-bE:{{[^"]+}}" |
| // CHECK-LD64-SHARED-EXPORTS-ALT: "-lc++" |
| // CHECK-LD64-SHARED-EXPORTS-ALT: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc64.a" |
| // CHECK-LD64-SHARED-EXPORTS-ALT: "-lm" |
| // CHECK-LD64-SHARED-EXPORTS-ALT: "-lc" |
| |
| // Check powerpc-ibm-aix7.3.0.0, -fprofile-generate |
| // RUN: %clang %s -### 2>&1 \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir \ |
| // RUN: -static \ |
| // RUN: -fprofile-generate\ |
| // RUN: --target=powerpc-ibm-aix7.3.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: --unwindlib=libunwind \ |
| // RUN: | FileCheck --check-prefix=CHECK-PGO-NON-LTO %s |
| // CHECK-PGO-NON-LTO-NOT: warning: |
| // CHECK-PGO-NON-LTO: "-cc1" "-triple" "powerpc-ibm-aix7.3.0.0" |
| // CHECK-PGO-NON-LTO: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" |
| // CHECK-PGO-NON-LTO: "-isysroot" "[[SYSROOT:[^"]+]]" |
| // CHECK-PGO-NON-LTO: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-PGO-NON-LTO: "-bdbg:namedsects:ss" |
| // CHECK-PGO-NON-LTO: "-b32" |
| // CHECK-PGO-NON-LTO: "-bpT:0x10000000" "-bpD:0x20000000" |
| // CHECK-PGO-NON-LTO: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0.o" |
| // CHECK-PGO-NON-LTO-NOT: "-lc++" |
| // CHECK-PGO-NON-LTO-NOT: "-lc++abi" |
| // CHECK-PGO-NON-LTO: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc.a" |
| // CHECK-PGO-NON-LTO-NOT: "--as-needed" |
| // CHECK-PGO-NON-LTO-NOT: "-lunwind" |
| // CHECK-PGO-NON-LTO-NOT: "--no-as-needed" |
| // CHECK-PGO-NON-LTO-NOT: "-lm" |
| // CHECK-PGO-NON-LTO: "-lc" |
| |
| // Check powerpc64-ibm-aix7.1.0.0, 64-bit. -shared with -bexpall. |
| // RUN: %clangxx -x c++ %s 2>&1 -### \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir -shared \ |
| // RUN: --target=powerpc64-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: -Wl,-bexpall \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD64-SHARED-EXPALL %s |
| |
| // Check powerpc64-ibm-aix7.1.0.0, 64-bit. -shared with -bexpall (no -Wl, variant). |
| // RUN: %clangxx -x c++ %s 2>&1 -### \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir -shared \ |
| // RUN: --target=powerpc64-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: -bexpall \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD64-SHARED-EXPALL %s |
| |
| // Check powerpc64-ibm-aix7.1.0.0, 64-bit. -shared with -bexpall (-Xlinker variant). |
| // RUN: %clangxx -x c++ %s 2>&1 -### \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir -shared \ |
| // RUN: --target=powerpc64-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: -Xlinker -bexpall \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD64-SHARED-EXPALL %s |
| |
| // CHECK-LD64-SHARED-EXPALL: "-cc1" "-triple" "powerpc64-ibm-aix7.1.0.0" |
| // CHECK-LD64-SHARED-EXPALL: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" |
| // CHECK-LD64-SHARED-EXPALL: "-isysroot" "[[SYSROOT:[^"]+]]" |
| // CHECK-LD64-SHARED-EXPALL-NOT: "{{.*}}llvm-nm" |
| // CHECK-LD64-SHARED-EXPALL-NOT: "-X" |
| // CHECK-LD64-SHARED-EXPALL-NOT: "64" |
| // CHECK-LD64-SHARED-EXPALL: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-LD64-SHARED-EXPALL: "-bM:SRE" |
| // CHECK-LD64-SHARED-EXPALL: "-bnoentry" |
| // CHECK-LD64-SHARED-EXPALL: "-b64" |
| // CHECK-LD64-SHARED-EXPALL: "-bpT:0x100000000" "-bpD:0x110000000" |
| // CHECK-LD64-SHARED-EXPALL-NOT: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0_64.o" |
| // CHECK-LD64-SHARED-EXPALL-NOT: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti_64.o" |
| // CHECK-LD64-SHARED-EXPALL: "-b{{(" ")?}}expall" |
| // CHECK-LD64-SHARED-EXPALL-NOT: "-bE:{{[^"]+}}" |
| // CHECK-LD64-SHARED-EXPALL: "-lc++" |
| // CHECK-LD64-SHARED-EXPALL: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc64.a" |
| // CHECK-LD64-SHARED-EXPALL: "-lm" |
| // CHECK-LD64-SHARED-EXPALL: "-lc" |
| |
| // Check powerpc-ibm-aix7.2.5.3, -fprofile-generate, -flto |
| // RUN: %clang %s -### 2>&1 \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir \ |
| // RUN: -static \ |
| // RUN: -fprofile-generate\ |
| // RUN: -flto\ |
| // RUN: --target=powerpc-ibm-aix7.2.5.3 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: --unwindlib=libunwind \ |
| // RUN: | FileCheck --check-prefix=CHECK-PGO-LTO %s |
| // CHECK-PGO-LTO-NOT: warning: |
| // CHECK-PGO-LTO: "-cc1" "-triple" "powerpc-ibm-aix7.2.5.3" |
| // CHECK-PGO-LTO: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" |
| // CHECK-PGO-LTO: "-isysroot" "[[SYSROOT:[^"]+]]" |
| // CHECK-PGO-LTO: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-PGO-LTO: "-bdbg:namedsects:ss" |
| // CHECK-PGO-LTO: "-b32" |
| // CHECK-PGO-LTO: "-bpT:0x10000000" "-bpD:0x20000000" |
| // CHECK-PGO-LTO: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0.o" |
| // CHECK-PGO-LTO-NOT: "-lc++" |
| // CHECK-PGO-LTO-NOT: "-lc++abi" |
| // CHECK-PGO-LTO: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc.a" |
| // CHECK-PGO-LTO-NOT: "--as-needed" |
| // CHECK-PGO-LTO-NOT: "-lunwind" |
| // CHECK-PGO-LTO-NOT: "--no-as-needed" |
| // CHECK-PGO-LTO-NOT: "-lm" |
| // CHECK-PGO-LTO: "-lc" |
| |
| // Check powerpc64-ibm-aix7.1.0.0, 64-bit. -shared with -bexpfull (no -Wl, variant). |
| // RUN: %clangxx -x c++ %s 2>&1 -### \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir -shared \ |
| // RUN: --target=powerpc64-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: -Wl,-bexpfull \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD64-SHARED-EXPFULL %s |
| |
| // Check powerpc64-ibm-aix7.1.0.0, 64-bit. -shared with -bexpfull (no -Wl, variant). |
| // RUN: %clangxx -x c++ %s 2>&1 -### \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir -shared \ |
| // RUN: --target=powerpc64-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: -bexpfull \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD64-SHARED-EXPFULL %s |
| |
| // Check powerpc64-ibm-aix7.1.0.0, 64-bit. -shared with -bexpfull (-Xlinker variant). |
| // RUN: %clangxx -x c++ %s 2>&1 -### \ |
| // RUN: -resource-dir=%S/Inputs/resource_dir -shared \ |
| // RUN: --target=powerpc64-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: -Xlinker -bexpfull \ |
| // RUN: | FileCheck --check-prefix=CHECK-LD64-SHARED-EXPFULL %s |
| |
| // CHECK-LD64-SHARED-EXPFULL: "-cc1" "-triple" "powerpc64-ibm-aix7.1.0.0" |
| // CHECK-LD64-SHARED-EXPFULL: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" |
| // CHECK-LD64-SHARED-EXPFULL: "-isysroot" "[[SYSROOT:[^"]+]]" |
| // CHECK-LD64-SHARED-EXPFULL-NOT: "{{.*}}llvm-nm" |
| // CHECK-LD64-SHARED-EXPFULL-NOT: "-X" |
| // CHECK-LD64-SHARED-EXPFULL-NOT: "64" |
| // CHECK-LD64-SHARED-EXPFULL: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-LD64-SHARED-EXPFULL: "-bM:SRE" |
| // CHECK-LD64-SHARED-EXPFULL: "-bnoentry" |
| // CHECK-LD64-SHARED-EXPFULL: "-b64" |
| // CHECK-LD64-SHARED-EXPFULL: "-bpT:0x100000000" "-bpD:0x110000000" |
| // CHECK-LD64-SHARED-EXPFULL-NOT: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0_64.o" |
| // CHECK-LD64-SHARED-EXPFULL-NOT: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti_64.o" |
| // CHECK-LD64-SHARED-EXPFULL: "-b{{(" ")?}}expfull" |
| // CHECK-LD64-SHARED-EXPFULL-NOT: "-bE:{{[^"]+}}" |
| // CHECK-LD64-SHARED-EXPFULL: "-lc++" |
| // CHECK-LD64-SHARED-EXPFULL: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc64.a" |
| // CHECK-LD64-SHARED-EXPFULL: "-lm" |
| // CHECK-LD64-SHARED-EXPFULL: "-lc" |
| |
| // Check powerpc-ibm-aix7.1.0.0. -fopenmp=libomp to specify libomp explicitly. |
| // RUN: %clang %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: --unwindlib=libunwind \ |
| // RUN: -fopenmp=libomp \ |
| // RUN: | FileCheck --check-prefixes=CHECK-FOPENMP,CHECK-FOPENMP-OMP %s |
| |
| // Check powerpc-ibm-aix7.1.0.0. -fopenmp=libiomp5 to specify libgomp explicitly. |
| // RUN: %clang %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: --unwindlib=libunwind \ |
| // RUN: -fopenmp=libiomp5 \ |
| // RUN: | FileCheck --check-prefixes=CHECK-FOPENMP,CHECK-FOPENMP-IOMP5 %s |
| |
| // Check powerpc-ibm-aix7.1.0.0. -fopenmp=libgomp to specify libgomp explicitly. |
| // RUN: %clang %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: --unwindlib=libunwind \ |
| // RUN: -fopenmp=libgomp \ |
| // RUN: | FileCheck --check-prefixes=CHECK-FOPENMP,CHECK-FOPENMP-GOMP %s |
| |
| // CHECK-FOPENMP-NOT: warning: |
| // CHECK-FOPENMP: "-cc1" "-triple" "powerpc-ibm-aix7.1.0.0" |
| // CHECK-FOPENMP: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" |
| // CHECK-FOPENMP: "-isysroot" "[[SYSROOT:[^"]+]]" |
| // CHECK-FOPENMP: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-FOPENMP-NOT: "-bnso" |
| // CHECK-FOPENMP: "-b32" |
| // CHECK-FOPENMP: "-bpT:0x10000000" "-bpD:0x20000000" |
| // CHECK-FOPENMP: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0.o" |
| // CHECK-FOPENMP: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti.o" |
| // CHECK-FOPENMP-NOT: "-lc++" |
| // CHECK-FOPENMP-NOT: "-lc++abi" |
| // CHECK-FOPENMP: "[[RESOURCE_DIR]]{{/|\\\\}}lib{{/|\\\\}}aix{{/|\\\\}}libclang_rt.builtins-powerpc.a" |
| // CHECK-FOPENMP-NOT: "--as-needed" |
| // CHECK-FOPENMP: "-lunwind" |
| // CHECK-FOPENMP-NOT: "--no-as-needed" |
| // CHECK-FOPENMP-NOT: "-lm" |
| // CHECK-FOPENMP-OMP: "-lomp" |
| // CHECK-FOPENMP-IOMP5: "-liomp5" |
| // CHECK-FOPENMP-GOMP: "-lgomp" |
| // CHECK-FOPENMP: "-lc" |
| |
| // Check powerpc-ibm-aix7.1.0.0, 32-bit. -fopenmp=libfoo results an error. |
| // RUN: not %clang %s 2>&1 -### \ |
| // RUN: --target=powerpc-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: -fopenmp=libfoo \ |
| // RUN: | FileCheck --check-prefixes=CHECK-FOPENMP-FOO %s |
| // CHECK-FOPENMP-FOO: error: unsupported argument 'libfoo' to option '-fopenmp=' |
| |
| // Check powerpc-ibm-aix7.1.0.0. -r does not link object files or libraries |
| // RUN: %clang %s 2>&1 -### \ |
| // RUN: --target=powerpc-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: --unwindlib=libunwind \ |
| // RUN: -L/foo/bar \ |
| // RUN: -r \ |
| // RUN: | FileCheck --check-prefixes=CHECK-RELOCATABLE %s |
| |
| // CHECK-RELOCATABLE: "-cc1" "-triple" "powerpc-ibm-aix7.1.0.0" |
| // CHECK-RELOCATABLE: "-isysroot" "[[SYSROOT:[^"]+]]" |
| // CHECK-RELOCATABLE: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-RELOCATABLE: "-r" |
| // CHECK-RELOCATABLE: "-L/foo/bar" |
| // CHECK-RELOCATABLE-NOT: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0.o" |
| // CHECK-RELOCATABLE-NOT: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti.o" |
| // CHECK-RELOCATABLE-NOT: "-l{{.*}}" |
| // CHECK-RELOCATABLE-NOT: "-L{{.*}}" |
| |
| // Check powerpc-ibm-aix7.1.0.0. -K is a passthrough linker option. |
| // RUN: %clang %s 2>&1 -### \ |
| // RUN: --target=powerpc-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: --unwindlib=libunwind \ |
| // RUN: -K \ |
| // RUN: | FileCheck --check-prefixes=CHECK-K %s |
| // CHECK-K: "-cc1" "-triple" "powerpc-ibm-aix7.1.0.0" |
| // CHECK-K: "-isysroot" "[[SYSROOT:[^"]+]]" |
| // CHECK-K: "{{.*}}ld{{(.exe)?}}" |
| // CHECK-K: "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0.o" |
| // CHECK-K: "[[SYSROOT]]/usr/lib{{/|\\\\}}crti.o" |
| // CHECK-K: "-K" |
| |
| // Check powerpc-ibm-aix7.1.0.0. -K unused when not linking. |
| // RUN: %clang %s 2>&1 -### \ |
| // RUN: --target=powerpc-ibm-aix7.1.0.0 \ |
| // RUN: --sysroot %S/Inputs/aix_ppc_tree \ |
| // RUN: --unwindlib=libunwind \ |
| // RUN: -K \ |
| // RUN: -c \ |
| // RUN: | FileCheck --check-prefixes=CHECK-K-UNUSED %s |
| // CHECK-K-UNUSED: clang: warning: -K: 'linker' input unused [-Wunused-command-line-argument] |