|
LLVM 22.0.0git
|
This file defines the WebAssembly-specific subclass of TargetMachine. More...
#include "WebAssemblyTargetMachine.h"#include "MCTargetDesc/WebAssemblyMCTargetDesc.h"#include "TargetInfo/WebAssemblyTargetInfo.h"#include "WebAssembly.h"#include "WebAssemblyISelLowering.h"#include "WebAssemblyMachineFunctionInfo.h"#include "WebAssemblyTargetObjectFile.h"#include "WebAssemblyTargetTransformInfo.h"#include "WebAssemblyUtilities.h"#include "llvm/CodeGen/MIRParser/MIParser.h"#include "llvm/CodeGen/Passes.h"#include "llvm/CodeGen/RegAllocRegistry.h"#include "llvm/CodeGen/TargetPassConfig.h"#include "llvm/IR/Function.h"#include "llvm/InitializePasses.h"#include "llvm/MC/TargetRegistry.h"#include "llvm/Support/Compiler.h"#include "llvm/Target/TargetOptions.h"#include "llvm/Transforms/Scalar.h"#include "llvm/Transforms/Scalar/LowerAtomicPass.h"#include "llvm/Transforms/Utils.h"#include <optional>Go to the source code of this file.
Macros | |
| #define | DEBUG_TYPE "wasm" |
Functions | |
| LLVM_ABI LLVM_EXTERNAL_VISIBILITY void | LLVMInitializeWebAssemblyTarget () |
| static Reloc::Model | getEffectiveRelocModel (std::optional< Reloc::Model > RM) |
| static void | basicCheckForEHAndSjLj (TargetMachine *TM) |
Variables | |
| static cl::opt< bool > | WasmDisableExplicitLocals ("wasm-disable-explicit-locals", cl::Hidden, cl::desc("WebAssembly: output implicit locals in" " instruction output for test purposes only."), cl::init(false)) |
| static cl::opt< bool > | WasmDisableFixIrreducibleControlFlowPass ("wasm-disable-fix-irreducible-control-flow-pass", cl::Hidden, cl::desc("webassembly: disables the fix " " irreducible control flow optimization pass"), cl::init(false)) |
This file defines the WebAssembly-specific subclass of TargetMachine.
Definition in file WebAssemblyTargetMachine.cpp.
| #define DEBUG_TYPE "wasm" |
Definition at line 38 of file WebAssemblyTargetMachine.cpp.
|
static |
Definition at line 142 of file WebAssemblyTargetMachine.cpp.
References llvm::None, llvm::report_fatal_error(), llvm::Wasm, llvm::WebAssembly::WasmEnableEH, and llvm::WebAssembly::WasmEnableSjLj.
Referenced by llvm::WebAssemblyTargetMachine::WebAssemblyTargetMachine().
|
static |
Definition at line 130 of file WebAssemblyTargetMachine.cpp.
References llvm::Reloc::Static.
| LLVM_ABI LLVM_EXTERNAL_VISIBILITY void LLVMInitializeWebAssemblyTarget | ( | ) |
Definition at line 86 of file WebAssemblyTargetMachine.cpp.
References llvm::PassRegistry::getPassRegistry(), llvm::getTheWebAssemblyTarget32(), llvm::getTheWebAssemblyTarget64(), llvm::initializeFixFunctionBitcastsPass(), llvm::initializeLowerGlobalDtorsLegacyPassPass(), llvm::initializeOptimizeReturnedPass(), llvm::initializeWebAssemblyAddMissingPrototypesPass(), llvm::initializeWebAssemblyArgumentMovePass(), llvm::initializeWebAssemblyAsmPrinterPass(), llvm::initializeWebAssemblyCFGSortPass(), llvm::initializeWebAssemblyCFGStackifyPass(), llvm::initializeWebAssemblyDAGToDAGISelLegacyPass(), llvm::initializeWebAssemblyDebugFixupPass(), llvm::initializeWebAssemblyExceptionInfoPass(), llvm::initializeWebAssemblyExplicitLocalsPass(), llvm::initializeWebAssemblyFixBrTableDefaultsPass(), llvm::initializeWebAssemblyFixIrreducibleControlFlowPass(), llvm::initializeWebAssemblyLateEHPreparePass(), llvm::initializeWebAssemblyLowerBrUnlessPass(), llvm::initializeWebAssemblyLowerEmscriptenEHSjLjPass(), llvm::initializeWebAssemblyLowerRefTypesIntPtrConvPass(), llvm::initializeWebAssemblyMCLowerPrePassPass(), llvm::initializeWebAssemblyMemIntrinsicResultsPass(), llvm::initializeWebAssemblyNullifyDebugValueListsPass(), llvm::initializeWebAssemblyOptimizeLiveIntervalsPass(), llvm::initializeWebAssemblyPeepholePass(), llvm::initializeWebAssemblyRefTypeMem2LocalPass(), llvm::initializeWebAssemblyRegColoringPass(), llvm::initializeWebAssemblyRegNumberingPass(), llvm::initializeWebAssemblyRegStackifyPass(), llvm::initializeWebAssemblyReplacePhysRegsPass(), llvm::initializeWebAssemblySetP2AlignOperandsPass(), X, and Y.
|
static |
|
static |