#include "HLSL.h"
#include "CommonArgs.h"
#include "clang/Driver/Compilation.h"
#include "clang/Driver/DriverDiagnostic.h"
#include "clang/Driver/Job.h"
#include "llvm/ADT/StringSwitch.h"
#include "llvm/TargetParser/Triple.h"
usingnamespaceclang::driver;
usingnamespaceclang::driver::tools;
usingnamespaceclang::driver::toolchains;
usingnamespaceclang;
usingnamespacellvm::opt;
usingnamespacellvm;
namespace {
const unsigned OfflineLibMinor = …;
bool isLegalShaderModel(Triple &T) { … }
std::optional<std::string> tryParseProfile(StringRef Profile) { … }
bool isLegalValidatorVersion(StringRef ValVersionStr, const Driver &D) { … }
}
void tools::hlsl::Validator::ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output,
const InputInfoList &Inputs,
const ArgList &Args,
const char *LinkingOutput) const { … }
HLSLToolChain::HLSLToolChain(const Driver &D, const llvm::Triple &Triple,
const ArgList &Args)
: … { … }
Tool *clang::driver::toolchains::HLSLToolChain::getTool(
Action::ActionClass AC) const { … }
std::optional<std::string>
clang::driver::toolchains::HLSLToolChain::parseTargetProfile(
StringRef TargetProfile) { … }
DerivedArgList *
HLSLToolChain::TranslateArgs(const DerivedArgList &Args, StringRef BoundArch,
Action::OffloadKind DeviceOffloadKind) const { … }
bool HLSLToolChain::requiresValidation(DerivedArgList &Args) const { … }