[clang] b129c9d - Author: Shuhong Liu <shuhong.liu at ibm.com>

Hubert Tong via cfe-commits cfe-commits at lists.llvm.org
Mon Aug 10 07:43:08 PDT 2020


@shuhong.liu at ibm.com: I'm not sure what process you followed to commit
this, but the commit message does not seem right. It might make sense to
revert this and commit again with the proper message to make annotations
from `git blame` work better.

-- HT

On Mon, Aug 10, 2020 at 10:33 AM Shuhong Liu via cfe-commits <
cfe-commits at lists.llvm.org> wrote:

>
> Author: Shuhong Liu
> Date: 2020-08-10T10:27:04-04:00
> New Revision: b129c9d81aff8ece71eb29df1e5f31136a48c040
>
> URL:
> https://github.com/llvm/llvm-project/commit/b129c9d81aff8ece71eb29df1e5f31136a48c040
> DIFF:
> https://github.com/llvm/llvm-project/commit/b129c9d81aff8ece71eb29df1e5f31136a48c040.diff
>
> LOG: Author: Shuhong Liu <shuhong.liu at ibm.com>
> Date:   Mon Aug 10 10:31:50 2020 +0300
>
>     [AIX][Clang][Driver] Generate reference to the C++ library on the link
> step
>
>     Have the linker find libc++ on its search path by adding -lc++.
>
>     Reviewed by: daltenty, hubert.reinterpretcast, stevewan
>
>     Differential Revision: https://reviews.llvm.org/D85315
>
> Added:
>
>
> Modified:
>     clang/lib/Driver/ToolChains/AIX.cpp
>     clang/lib/Driver/ToolChains/AIX.h
>     clang/test/Driver/aix-ld.c
>
> Removed:
>
>
>
>
> ################################################################################
> diff  --git a/clang/lib/Driver/ToolChains/AIX.cpp
> b/clang/lib/Driver/ToolChains/AIX.cpp
> index f9d8e18d6fd0..bc130a5557e9 100644
> --- a/clang/lib/Driver/ToolChains/AIX.cpp
> +++ b/clang/lib/Driver/ToolChains/AIX.cpp
> @@ -141,6 +141,9 @@ void aix::Linker::ConstructJob(Compilation &C, const
> JobAction &JA,
>    Args.AddAllArgs(CmdArgs, options::OPT_L);
>    ToolChain.AddFilePathLibArgs(Args, CmdArgs);
>
> +  if (getToolChain().ShouldLinkCXXStdlib(Args))
> +    getToolChain().AddCXXStdlibLibArgs(Args, CmdArgs);
> +
>    if (!Args.hasArg(options::OPT_nostdlib, options::OPT_nodefaultlibs)) {
>      // Support POSIX threads if "-pthreads" or "-pthread" is present.
>      if (Args.hasArg(options::OPT_pthreads, options::OPT_pthread))
> @@ -197,6 +200,23 @@ void AIX::AddClangSystemIncludeArgs(const ArgList
> &DriverArgs,
>    addSystemInclude(DriverArgs, CC1Args, UP.str());
>  }
>
> +void AIX::AddCXXStdlibLibArgs(const llvm::opt::ArgList &DriverArgs,
> +                              llvm::opt::ArgStringList &CC1Args) const {
> +  switch (GetCXXStdlibType(DriverArgs)) {
> +  case ToolChain::CST_Libcxx:
> +    CC1Args.push_back("-lc++");
> +    return;
> +  case ToolChain::CST_Libstdcxx:
> +    llvm::report_fatal_error("linking libstdc++ unimplemented on AIX");
> +  }
> +
> +  llvm_unreachable("Unexpected C++ library type; only libc++ is
> supported.");
> +}
> +
> +ToolChain::CXXStdlibType AIX::GetDefaultCXXStdlibType() const {
> +  return ToolChain::CST_Libcxx;
> +}
> +
>  auto AIX::buildAssembler() const -> Tool * { return new
> aix::Assembler(*this); }
>
>  auto AIX::buildLinker() const -> Tool * { return new aix::Linker(*this); }
>
> diff  --git a/clang/lib/Driver/ToolChains/AIX.h
> b/clang/lib/Driver/ToolChains/AIX.h
> index 942bb3cceb8a..f63b20da969e 100644
> --- a/clang/lib/Driver/ToolChains/AIX.h
> +++ b/clang/lib/Driver/ToolChains/AIX.h
> @@ -67,6 +67,11 @@ class LLVM_LIBRARY_VISIBILITY AIX : public ToolChain {
>    AddClangSystemIncludeArgs(const llvm::opt::ArgList &DriverArgs,
>                              llvm::opt::ArgStringList &CC1Args) const
> override;
>
> +  void AddCXXStdlibLibArgs(const llvm::opt::ArgList &Args,
> +                           llvm::opt::ArgStringList &CmdArgs) const
> override;
> +
> +  CXXStdlibType GetDefaultCXXStdlibType() const override;
> +
>  protected:
>    Tool *buildAssembler() const override;
>    Tool *buildLinker() const override;
>
> diff  --git a/clang/test/Driver/aix-ld.c b/clang/test/Driver/aix-ld.c
> index 59e35248af30..7b3710ca21ef 100644
> --- a/clang/test/Driver/aix-ld.c
> +++ b/clang/test/Driver/aix-ld.c
> @@ -15,6 +15,7 @@
>  // CHECK-LD32:     "-bpT:0x10000000" "-bpD:0x20000000"
>  // CHECK-LD32:     "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0.o"
>  // CHECK-LD32:     "-L[[SYSROOT]]/usr/lib"
> +// CHECK-LD32-NOT: "-lc++"
>  // CHECK-LD32:     "-lc"
>
>  // Check powerpc64-ibm-aix7.1.0.0, 64-bit.
> @@ -31,6 +32,7 @@
>  // CHECK-LD64:     "-bpT:0x100000000" "-bpD:0x110000000"
>  // CHECK-LD64:     "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0_64.o"
>  // CHECK-LD64:     "-L[[SYSROOT]]/usr/lib"
> +// CHECK-LD64-NOT: "-lc++"
>  // CHECK-LD64:     "-lc"
>
>  // Check powerpc-ibm-aix7.1.0.0, 32-bit. Enable POSIX thread support.
> @@ -48,6 +50,7 @@
>  // CHECK-LD32-PTHREAD:     "-bpT:0x10000000" "-bpD:0x20000000"
>  // CHECK-LD32-PTHREAD:     "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0.o"
>  // CHECK-LD32-PTHREAD:     "-L[[SYSROOT]]/usr/lib"
> +// CHECK-LD32-PTHREAD-NOT: "-lc++"
>  // CHECK-LD32-PTHREAD:     "-lpthreads"
>  // CHECK-LD32-PTHREAD:     "-lc"
>
> @@ -66,6 +69,7 @@
>  // CHECK-LD64-PTHREAD:     "-bpT:0x100000000" "-bpD:0x110000000"
>  // CHECK-LD64-PTHREAD:     "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0_64.o"
>  // CHECK-LD64-PTHREAD:     "-L[[SYSROOT]]/usr/lib"
> +// CHECK-LD64-PTHREAD-NOT: "-lc++"
>  // CHECK-LD64-PTHREAD:     "-lpthreads"
>  // CHECK-LD64-PTHREAD:     "-lc"
>
> @@ -84,6 +88,7 @@
>  // CHECK-LD32-PROF:     "-bpT:0x10000000" "-bpD:0x20000000"
>  // CHECK-LD32-PROF:     "[[SYSROOT]]/usr/lib{{/|\\\\}}mcrt0.o"
>  // CHECK-LD32-PROF:     "-L[[SYSROOT]]/usr/lib"
> +// CHECK-LD32-PROF-NOT: "-lc++"
>  // CHECK-LD32-PROF:     "-lc"
>
>  // Check powerpc64-ibm-aix7.1.0.0, 64-bit. Enable g-profiling.
> @@ -101,6 +106,7 @@
>  // CHECK-LD64-GPROF:     "-bpT:0x100000000" "-bpD:0x110000000"
>  // CHECK-LD64-GPROF:     "[[SYSROOT]]/usr/lib{{/|\\\\}}gcrt0_64.o"
>  // CHECK-LD64-GPROF:     "-L[[SYSROOT]]/usr/lib"
> +// CHECK-LD64-GPROF-NOT: "-lc++"
>  // CHECK-LD64-GPROF:     "-lc"
>
>  // Check powerpc-ibm-aix7.1.0.0, 32-bit. Static linking.
> @@ -118,6 +124,7 @@
>  // CHECK-LD32-STATIC:     "-bpT:0x10000000" "-bpD:0x20000000"
>  // CHECK-LD32-STATIC:     "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0.o"
>  // CHECK-LD32-STATIC:     "-L[[SYSROOT]]/usr/lib"
> +// CHECK-LD32-STATIC-NOT: "-lc++"
>  // CHECK-LD32-STATIC:     "-lc"
>
>  // Check powerpc-ibm-aix7.1.0.0, 32-bit. Library search path.
> @@ -136,6 +143,7 @@
>  // CHECK-LD32-LIBP:     "[[SYSROOT]]/usr/lib{{/|\\\\}}crt0.o"
>  // CHECK-LD32-LIBP:     "-L[[SYSROOT]]/powerpc-ibm-aix7.1.0.0"
>  // CHECK-LD32-LIBP:     "-L[[SYSROOT]]/usr/lib"
> +// CHECK-LD32-LIBP-NOT: "-lc++"
>  // CHECK-LD32-LIBP:     "-lc"
>
>  // Check powerpc-ibm-aix7.1.0.0, 32-bit. nostdlib.
> @@ -154,6 +162,7 @@
>  // 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:     "-L[[SYSROOT]]/usr/lib"
> +// CHECK-LD32-NO-STD-LIB-NOT: "-lc++"
>  // CHECK-LD32-NO-STD-LIB-NOT: "-lpthreads"
>  // CHECK-LD32-NO-STD-LIB-NOT: "-lc"
>
> @@ -173,14 +182,15 @@
>  // 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:     "-L[[SYSROOT]]/usr/lib"
> +// CHECK-LD64-NO-DEFAULT-LIBS-NOT: "-lc++"
>  // CHECK-LD64-NO-DEFAULT-LIBS-NOT: "-lpthreads"
>  // CHECK-LD64-NO-DEFAULT-LIBS-NOT: "-lc"
>
>  // Check powerpc-ibm-aix7.1.0.0, 32-bit. 'bcdtors' and argument order.
>  // RUN: %clangxx -no-canonical-prefixes %s 2>&1 -### \
> -// RUN:          -Wl,-bnocdtors \
> -// RUN:          -target powerpc-ibm-aix7.1.0.0 \
> -// RUN:          --sysroot %S/Inputs/aix_ppc_tree \
> +// RUN:        -Wl,-bnocdtors \
> +// RUN:        -target powerpc-ibm-aix7.1.0.0 \
> +// RUN:        --sysroot %S/Inputs/aix_ppc_tree \
>  // RUN:   | FileCheck --check-prefix=CHECK-LD32-CXX-ARG-ORDER %s
>  // CHECK-LD32-CXX-ARG-ORDER:     {{.*}}clang{{.*}}" "-cc1" "-triple"
> "powerpc-ibm-aix7.1.0.0"
>  // CHECK-LD32-CXX-ARG-ORDER:     "-isysroot" "[[SYSROOT:[^"]+]]"
> @@ -192,3 +202,146 @@
>  // 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"
> +
> +// Check powerpc-ibm-aix7.1.0.0, 32-bit. lc++ and lc order.
> +// RUN: %clangxx -no-canonical-prefixes %s 2>&1 -### \
> +// RUN:        -target powerpc-ibm-aix7.1.0.0 \
> +// RUN:        --sysroot %S/Inputs/aix_ppc_tree \
> +// RUN:   | FileCheck --check-prefix=CHECK-LD32-CXX-ARG-LCXX %s
> +// CHECK-LD32-CXX-ARG-LCXX:     {{.*}}clang{{.*}}" "-cc1" "-triple"
> "powerpc-ibm-aix7.1.0.0"
> +// 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:     "-L[[SYSROOT]]/usr/lib"
> +// CHECK-LD32-CXX-ARG-LCXX:     "-lc++"
> +// CHECK-LD32-CXX-ARG-LCXX:     "-lc"
> +
> +// Check powerpc64-ibm-aix7.1.0.0, 64-bit. lc++ and lc order.
> +// RUN: %clangxx -no-canonical-prefixes %s 2>&1 -### \
> +// RUN:        -target powerpc64-ibm-aix7.1.0.0 \
> +// RUN:        --sysroot %S/Inputs/aix_ppc_tree \
> +// RUN:   | FileCheck --check-prefix=CHECK-LD64-CXX-ARG-LCXX %s
> +// CHECK-LD64-CXX-ARG-LCXX:     {{.*}}clang{{.*}}" "-cc1" "-triple"
> "powerpc64-ibm-aix7.1.0.0"
> +// 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:     "-L[[SYSROOT]]/usr/lib"
> +// CHECK-LD64-CXX-ARG-LCXX:     "-lc++"
> +// CHECK-LD64-CXX-ARG-LCXX:     "-lc"
> +
> +// Check powerpc-ibm-aix7.1.0.0, 32-bit. -nodefaultlibs.
> +// RUN: %clangxx -no-canonical-prefixes %s 2>&1 -### \
> +// RUN:        -nodefaultlibs \
> +// RUN:        -target powerpc-ibm-aix7.1.0.0 \
> +// RUN:        --sysroot %S/Inputs/aix_ppc_tree \
> +// RUN:   | FileCheck --check-prefix=CHECK-LD32-NODEFLIB-LCXX %s
> +// CHECK-LD32-NODEFLIB-LCXX:     {{.*}}clang{{.*}}" "-cc1" "-triple"
> "powerpc-ibm-aix7.1.0.0"
> +// 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:     "-L[[SYSROOT]]/usr/lib"
> +// CHECK-LD32-NODEFLIB-LCXX-NOT: "-lc++"
> +// CHECK-LD32-NODEFLIB-LCXX-NOT: "-lc"
> +
> +// Check powerpc64-ibm-aix7.1.0.0, 64-bit. -nodefaultlibs.
> +// RUN: %clangxx -no-canonical-prefixes %s 2>&1 -### \
> +// RUN:        -nodefaultlibs \
> +// RUN:        -target powerpc64-ibm-aix7.1.0.0 \
> +// RUN:        --sysroot %S/Inputs/aix_ppc_tree \
> +// RUN:   | FileCheck --check-prefix=CHECK-LD64-NODEFLIB-LCXX %s
> +// CHECK-LD64-NODEFLIB-LCXX:     {{.*}}clang{{.*}}" "-cc1" "-triple"
> "powerpc64-ibm-aix7.1.0.0"
> +// 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:     "-L[[SYSROOT]]/usr/lib"
> +// CHECK-LD64-NODEFLIB-LCXX-NOT: "-lc++"
> +// CHECK-LD64-NODEFLIB-LCXX-NOT: "-lc"
> +
> +// Check powerpc-ibm-aix7.1.0.0, 32-bit. -nostdlib.
> +// RUN: %clangxx -no-canonical-prefixes %s 2>&1 -### \
> +// RUN:        -nostdlib \
> +// RUN:        -target powerpc-ibm-aix7.1.0.0 \
> +// RUN:        --sysroot %S/Inputs/aix_ppc_tree \
> +// RUN:   | FileCheck --check-prefix=CHECK-LD32-NOSTDLIB-LCXX %s
> +// CHECK-LD32-NOSTDLIB-LCXX:     {{.*}}clang{{.*}}" "-cc1" "-triple"
> "powerpc-ibm-aix7.1.0.0"
> +// 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:     "-L[[SYSROOT]]/usr/lib"
> +// CHECK-LD32-NOSTDLIB-LCXX-NOT: "-lc++"
> +// CHECK-LD32-NOSTDLIB-LCXX-NOT: "-lc"
> +
> +// Check powerpc64-ibm-aix7.1.0.0, 64-bit. -nostdlib.
> +// RUN: %clangxx -no-canonical-prefixes %s 2>&1 -### \
> +// RUN:        -nostdlib \
> +// RUN:        -target powerpc64-ibm-aix7.1.0.0 \
> +// RUN:        --sysroot %S/Inputs/aix_ppc_tree \
> +// RUN:   | FileCheck --check-prefix=CHECK-LD64-NOSTDLIB-LCXX %s
> +// CHECK-LD64-NOSTDLIB-LCXX:     {{.*}}clang{{.*}}" "-cc1" "-triple"
> "powerpc64-ibm-aix7.1.0.0"
> +// 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:     "-L[[SYSROOT]]/usr/lib"
> +// CHECK-LD64-NOSTDLIB-LCXX-NOT: "-lc++"
> +// CHECK-LD64-NOSTDLIB-LCXX-NOT: "-lc"
> +
> +// Check powerpc-ibm-aix7.1.0.0, 32-bit. -nostdlib++.
> +// RUN: %clangxx -no-canonical-prefixes %s 2>&1 -### \
> +// RUN:        -nostdlib++ \
> +// RUN:        -target powerpc-ibm-aix7.1.0.0 \
> +// RUN:        --sysroot %S/Inputs/aix_ppc_tree \
> +// RUN:   | FileCheck --check-prefix=CHECK-LD32-NOSTDLIBXX-LCXX %s
> +// CHECK-LD32-NOSTDLIBXX-LCXX:     {{.*}}clang{{.*}}" "-cc1" "-triple"
> "powerpc-ibm-aix7.1.0.0"
> +// 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:     "-L[[SYSROOT]]/usr/lib"
> +// CHECK-LD32-NOSTDLIBXX-LCXX-NOT: "-lc++"
> +// CHECK-LD32-NOSTDLIBXX-LCXX:     "-lc"
> +
> +// Check powerpc64-ibm-aix7.1.0.0, 64-bit. -nostdlib++.
> +// RUN: %clangxx -no-canonical-prefixes %s 2>&1 -### \
> +// RUN:        -nostdlib++ \
> +// RUN:        -target powerpc64-ibm-aix7.1.0.0 \
> +// RUN:        --sysroot %S/Inputs/aix_ppc_tree \
> +// RUN:   | FileCheck --check-prefix=CHECK-LD64-NOSTDLIBXX-LCXX %s
> +// CHECK-LD64-NOSTDLIBXX-LCXX:     {{.*}}clang{{.*}}" "-cc1" "-triple"
> "powerpc64-ibm-aix7.1.0.0"
> +// 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:     "-L[[SYSROOT]]/usr/lib"
> +// CHECK-LD64-NOSTDLIBXX-LCXX-NOT: "-lc++"
> +// CHECK-LD64-NOSTDLIBXX-LCXX:     "-lc"
> +
> +// Check powerpc-ibm-aix7.1.0.0, 32-bit. -stdlib=libstdc++ invokes fatal
> error.
> +// RUN: not --crash %clangxx -no-canonical-prefixes %s 2>&1 -### \
> +// RUN:        -target powerpc-ibm-aix7.1.0.0 \
> +// RUN:        -stdlib=libstdc++ \
> +// 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 -no-canonical-prefixes %s 2>&1 -### \
> +// RUN:        -target powerpc64-ibm-aix7.1.0.0 \
> +// RUN:        -stdlib=libstdc++ \
> +// 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
>
>
>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at lists.llvm.org
> https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20200810/e1a066e8/attachment-0001.html>


More information about the cfe-commits mailing list