Go to the documentation of this file.
15 #ifndef LLVM_LIB_TARGET_WEBASSEMBLY_WEBASSEMBLYTARGETMACHINE_H
16 #define LLVM_LIB_TARGET_WEBASSEMBLY_WEBASSEMBLYTARGETMACHINE_H
24 std::unique_ptr<TargetLoweringObjectFile> TLOF;
38 std::string
FS)
const;
59 SMRange &SourceRange)
const override;
This is an optimization pass for GlobalISel generic memory operations.
Targets should override this in a way that mirrors the implementation of llvm::MachineFunctionInfo.
Target - Wrapper for Target specific information.
~WebAssemblyTargetMachine() override
Triple - Helper class for working with autoconf configuration names.
TargetPassConfig * createPassConfig(PassManagerBase &PM) override
Create a pass configuration object to be used by addPassToEmitX methods for generating a pipeline of ...
yaml::MachineFunctionInfo * convertFuncInfoToYAML(const MachineFunction &MF) const override
Allocate and initialize an instance of the YAML representation of the MachineFunctionInfo.
Instances of this class encapsulate one diagnostic report, allowing printing to a raw_ostream as a ca...
StringMap - This is an unconventional map that is specialized for handling keys that are "strings",...
Target-Independent Code Generator Pass Configuration Options.
const WebAssemblySubtarget * getSubtargetImpl() const
yaml::MachineFunctionInfo * createDefaultFuncInfoYAML() const override
Allocate and return a default initialized instance of the YAML representation for the MachineFunction...
bool parseMachineFunctionInfo(const yaml::MachineFunctionInfo &, PerFunctionMIParsingState &PFS, SMDiagnostic &Error, SMRange &SourceRange) const override
Parse out the target's MachineFunctionInfo from the YAML reprsentation.
StringRef - Represent a constant reference to a string, i.e.
TargetLoweringObjectFile * getObjFileLowering() const override
TargetTransformInfo getTargetTransformInfo(const Function &F) const override
Get a TargetTransformInfo implementation for the target.
Lightweight error class with error context and mandatory checking.
This class describes a target machine that is implemented with the LLVM target-independent code gener...
Represents a range in source code.
PassManagerBase - An abstract interface to allow code to add passes to a pass manager without having ...
bool usesPhysRegsForValues() const override
True if the target uses physical regs (as nearly all targets do).
WebAssemblyTargetMachine(const Target &T, const Triple &TT, StringRef CPU, StringRef FS, const TargetOptions &Options, Optional< Reloc::Model > RM, Optional< CodeModel::Model > CM, CodeGenOpt::Level OL, bool JIT)
Create an WebAssembly architecture model.