196d4ccf0SKazushi (Jam) Marukawa //===--- VE.cpp - Tools Implementations -------------------------*- C++ -*-===// 296d4ccf0SKazushi (Jam) Marukawa // 396d4ccf0SKazushi (Jam) Marukawa // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 496d4ccf0SKazushi (Jam) Marukawa // See https://llvm.org/LICENSE.txt for license information. 596d4ccf0SKazushi (Jam) Marukawa // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 696d4ccf0SKazushi (Jam) Marukawa // 796d4ccf0SKazushi (Jam) Marukawa //===----------------------------------------------------------------------===// 896d4ccf0SKazushi (Jam) Marukawa 996d4ccf0SKazushi (Jam) Marukawa #include "VE.h" 1096d4ccf0SKazushi (Jam) Marukawa #include "clang/Driver/Driver.h" 1196d4ccf0SKazushi (Jam) Marukawa #include "clang/Driver/DriverDiagnostic.h" 1296d4ccf0SKazushi (Jam) Marukawa #include "clang/Driver/Options.h" 1396d4ccf0SKazushi (Jam) Marukawa #include "llvm/Option/ArgList.h" 1496d4ccf0SKazushi (Jam) Marukawa 1596d4ccf0SKazushi (Jam) Marukawa using namespace clang::driver; 1696d4ccf0SKazushi (Jam) Marukawa using namespace clang::driver::tools; 1796d4ccf0SKazushi (Jam) Marukawa using namespace clang; 1896d4ccf0SKazushi (Jam) Marukawa using namespace llvm::opt; 1996d4ccf0SKazushi (Jam) Marukawa getVETargetFeatures(const Driver & D,const ArgList & Args,std::vector<StringRef> & Features)2096d4ccf0SKazushi (Jam) Marukawavoid ve::getVETargetFeatures(const Driver &D, const ArgList &Args, 21*b6ce8600SKazushi (Jam) Marukawa std::vector<StringRef> &Features) { 22*b6ce8600SKazushi (Jam) Marukawa if (Args.hasFlag(options::OPT_mvevpu, options::OPT_mno_vevpu, true)) 23*b6ce8600SKazushi (Jam) Marukawa Features.push_back("+vpu"); 24*b6ce8600SKazushi (Jam) Marukawa else 25*b6ce8600SKazushi (Jam) Marukawa Features.push_back("-vpu"); 26*b6ce8600SKazushi (Jam) Marukawa } 27