CC1Args.push_back("-target-feature");
CC1Args.push_back("+reserved-r19");
}
+ if (Arg *A = DriverArgs.getLastArg(options::OPT_fvectorize,
+ options::OPT_fno_vectorize)) {
+ if (A->getOption().matches(options::OPT_fvectorize)) {
+ CC1Args.push_back("-mllvm");
+ CC1Args.push_back("-hexagon-autohvx");
+ }
+ }
}
void HexagonToolChain::AddClangSystemIncludeArgs(const ArgList &DriverArgs,
--- /dev/null
+// RUN: %clang -target hexagon -### %s 2>&1 | FileCheck %s --check-prefix=CHECK-DEFAULT
+// RUN: %clang -target hexagon -fvectorize -### %s 2>&1 | FileCheck %s --check-prefix=CHECK-VECTOR
+// RUN: %clang -target hexagon -fvectorize -fno-vectorize -### %s 2>&1 | FileCheck %s --check-prefix=CHECK-NOVECTOR
+
+// CHECK-DEFAULT-NOT: hexagon-autohvx
+// CHECK-VECTOR: "-mllvm" "-hexagon-autohvx"
+// CHECK-NOVECTOR-NOT: hexagon-autohvx