diff --git a/clang/lib/Driver/ToolChains/CommonArgs.cpp b/clang/lib/Driver/ToolChains/CommonArgs.cpp --- a/clang/lib/Driver/ToolChains/CommonArgs.cpp +++ b/clang/lib/Driver/ToolChains/CommonArgs.cpp @@ -599,6 +599,10 @@ options::OPT_gno_strict_dwarf, true)) CmdArgs.push_back( Args.MakeArgString(Twine(PluginOptPrefix) + "-strict-dwarf=true")); + + if (Args.getLastArg(options::OPT_mabi_EQ_vec_extabi)) + CmdArgs.push_back( + Args.MakeArgString(Twine(PluginOptPrefix) + "-vec-extabi")); } bool UseSeparateSections = diff --git a/clang/test/Driver/lto-aix.c b/clang/test/Driver/lto-aix.c --- a/clang/test/Driver/lto-aix.c +++ b/clang/test/Driver/lto-aix.c @@ -27,6 +27,16 @@ // O2: "-bplugin_opt:-O2" // O3: "-bplugin_opt:-O3" // +// vec-extabi option +// RUN: %clang --target=powerpc-ibm-aix --sysroot %S/Inputs/aix_ppc_tree %s \ +// RUN: -fuse-ld=ld -flto -mabi=vec-extabi -### 2>&1 \ +// RUN: | FileCheck --check-prefix=VECEXTABI %s +// RUN: %clang --target=powerpc-ibm-aix --sysroot %S/Inputs/aix_ppc_tree %s \ +// RUN: -fuse-ld=ld -flto -### 2>&1 | FileCheck --check-prefix=NOVECEXTABI %s +// +// VECEXTABI: "-bplugin_opt:-vec-extabi" +// NOVECEXTABI-NOT: "-bplugin_opt:-vec-extabi" +// // Test debugging options // RUN: %clang --target=powerpc-ibm-aix -### %s -flto -fuse-ld=ld -gdbx 2>&1 \ // RUN: | FileCheck -check-prefix=DBX %s