#include "RISCV.h"
#include "../Clang.h"
#include "ToolChains/CommonArgs.h"
#include "clang/Basic/CharInfo.h"
#include "clang/Driver/Driver.h"
#include "clang/Driver/DriverDiagnostic.h"
#include "clang/Driver/Options.h"
#include "llvm/Option/ArgList.h"
#include "llvm/Support/Error.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/TargetParser/Host.h"
#include "llvm/TargetParser/RISCVISAInfo.h"
#include "llvm/TargetParser/RISCVTargetParser.h"
usingnamespaceclang::driver;
usingnamespaceclang::driver::tools;
usingnamespaceclang;
usingnamespacellvm::opt;
static bool getArchFeatures(const Driver &D, StringRef Arch,
std::vector<StringRef> &Features,
const ArgList &Args) { … }
static void getRISCFeaturesFromMcpu(const Driver &D, const Arg *A,
const llvm::Triple &Triple,
StringRef Mcpu,
std::vector<StringRef> &Features) { … }
void riscv::getRISCVTargetFeatures(const Driver &D, const llvm::Triple &Triple,
const ArgList &Args,
std::vector<StringRef> &Features) { … }
StringRef riscv::getRISCVABI(const ArgList &Args, const llvm::Triple &Triple) { … }
std::string riscv::getRISCVArch(const llvm::opt::ArgList &Args,
const llvm::Triple &Triple) { … }
std::string riscv::getRISCVTargetCPU(const llvm::opt::ArgList &Args,
const llvm::Triple &Triple) { … }