#include "WebAssembly.h"
#include "Targets.h"
#include "clang/Basic/Builtins.h"
#include "clang/Basic/Diagnostic.h"
#include "clang/Basic/TargetBuiltins.h"
#include "llvm/ADT/StringSwitch.h"
usingnamespaceclang;
usingnamespaceclang::targets;
static constexpr Builtin::Info BuiltinInfo[] = …;
static constexpr llvm::StringLiteral ValidCPUNames[] = …;
StringRef WebAssemblyTargetInfo::getABI() const { … }
bool WebAssemblyTargetInfo::setABI(const std::string &Name) { … }
bool WebAssemblyTargetInfo::hasFeature(StringRef Feature) const { … }
bool WebAssemblyTargetInfo::isValidCPUName(StringRef Name) const { … }
void WebAssemblyTargetInfo::fillValidCPUList(
SmallVectorImpl<StringRef> &Values) const { … }
void WebAssemblyTargetInfo::getTargetDefines(const LangOptions &Opts,
MacroBuilder &Builder) const { … }
void WebAssemblyTargetInfo::setSIMDLevel(llvm::StringMap<bool> &Features,
SIMDEnum Level, bool Enabled) { … }
void WebAssemblyTargetInfo::setFeatureEnabled(llvm::StringMap<bool> &Features,
StringRef Name,
bool Enabled) const { … }
bool WebAssemblyTargetInfo::initFeatureMap(
llvm::StringMap<bool> &Features, DiagnosticsEngine &Diags, StringRef CPU,
const std::vector<std::string> &FeaturesVec) const { … }
bool WebAssemblyTargetInfo::handleTargetFeatures(
std::vector<std::string> &Features, DiagnosticsEngine &Diags) { … }
ArrayRef<Builtin::Info> WebAssemblyTargetInfo::getTargetBuiltins() const { … }
void WebAssemblyTargetInfo::adjust(DiagnosticsEngine &Diags,
LangOptions &Opts) { … }
void WebAssembly32TargetInfo::getTargetDefines(const LangOptions &Opts,
MacroBuilder &Builder) const { … }
void WebAssembly64TargetInfo::getTargetDefines(const LangOptions &Opts,
MacroBuilder &Builder) const { … }