|
LLVM 22.0.0git
|
This file defines an instruction selector for the WebAssembly target. More...
#include "MCTargetDesc/WebAssemblyMCTargetDesc.h"#include "WebAssembly.h"#include "WebAssemblyISelLowering.h"#include "WebAssemblyTargetMachine.h"#include "WebAssemblyUtilities.h"#include "llvm/CodeGen/MachineFrameInfo.h"#include "llvm/CodeGen/SelectionDAGISel.h"#include "llvm/CodeGen/WasmEHFuncInfo.h"#include "llvm/IR/DiagnosticInfo.h"#include "llvm/IR/Function.h"#include "llvm/IR/IntrinsicsWebAssembly.h"#include "llvm/MC/MCSymbolWasm.h"#include "llvm/Support/Debug.h"#include "llvm/Support/KnownBits.h"#include "llvm/Support/raw_ostream.h"#include "WebAssemblyGenDAGISel.inc"Go to the source code of this file.
Macros | |
| #define | DEBUG_TYPE "wasm-isel" |
| #define | PASS_NAME "WebAssembly Instruction Selection" |
Functions | |
| INITIALIZE_PASS (WebAssemblyDAGToDAGISelLegacy, DEBUG_TYPE, PASS_NAME, false, false) void WebAssemblyDAGToDAGISel | |
| static SDValue | getTagSymNode (int Tag, SelectionDAG *DAG) |
| static APInt | encodeFunctionSignature (SelectionDAG *DAG, SDLoc &DL, SmallVector< MVT, 4 > &Returns, SmallVector< MVT, 4 > &Params) |
This file defines an instruction selector for the WebAssembly target.
Definition in file WebAssemblyISelDAGToDAG.cpp.
| #define DEBUG_TYPE "wasm-isel" |
Definition at line 32 of file WebAssemblyISelDAGToDAG.cpp.
| #define PASS_NAME "WebAssembly Instruction Selection" |
Definition at line 33 of file WebAssemblyISelDAGToDAG.cpp.
|
static |
Definition at line 123 of file WebAssemblyISelDAGToDAG.cpp.
References llvm::BitWidth, DL, llvm::errs(), llvm::wasm::EXNREF, llvm::wasm::EXTERNREF, llvm::wasm::F32, llvm::wasm::F64, llvm::wasm::FUNCREF, llvm::wasm::I32, llvm::wasm::I64, LLVM_DEBUG, llvm_unreachable, and llvm::SmallVectorTemplateCommon< T, typename >::size().
|
static |
Definition at line 112 of file WebAssemblyISelDAGToDAG.cpp.
References assert(), llvm::WebAssembly::C_LONGJMP, llvm::WebAssembly::CPP_EXCEPTION, llvm::SelectionDAG::getDataLayout(), llvm::SelectionDAG::getMachineFunction(), llvm::SelectionDAG::getTargetExternalSymbol(), and llvm::SelectionDAG::getTargetLoweringInfo().
| INITIALIZE_PASS | ( | WebAssemblyDAGToDAGISelLegacy | , |
| DEBUG_TYPE | , | ||
| PASS_NAME | , | ||
| false | , | ||
| false | ) |
Definition at line 97 of file WebAssemblyISelDAGToDAG.cpp.
References DEBUG_TYPE, llvm::WebAssemblyFrameLowering::getLocalForStackObject(), llvm::MachineFrameInfo::getObjectIndexEnd(), PASS_NAME, and llvm::SelectionDAGISel::PreprocessISelDAG().