|
LLVM
4.0.0
|
Enumerations | |
| enum | OperandType { OPERAND_BASIC_BLOCK = MCOI::OPERAND_FIRST_TARGET, OPERAND_LOCAL, OPERAND_I32IMM, OPERAND_I64IMM, OPERAND_F32IMM, OPERAND_F64IMM, OPERAND_FUNCTION32, OPERAND_OFFSET32, OPERAND_P2ALIGN, OPERAND_SIGNATURE } |
| enum | ExprType { ExprType::Void = 0x40, ExprType::I32 = 0x7f, ExprType::I64 = 0x7e, ExprType::F32 = 0x7d, ExprType::F64 = 0x7c, ExprType::I8x16 = 0x7b, ExprType::I16x8 = 0x7a, ExprType::I32x4 = 0x79, ExprType::F32x4 = 0x78, ExprType::B8x16 = 0x77, ExprType::B16x8 = 0x76, ExprType::B32x4 = 0x75 } |
| This is used to indicate block signatures. More... | |
| enum | ValType { ValType::I32 = 0x7f, ValType::I64 = 0x7e, ValType::F32 = 0x7d, ValType::F64 = 0x7c, ValType::I8x16 = 0x7b, ValType::I16x8 = 0x7a, ValType::I32x4 = 0x79, ValType::F32x4 = 0x78, ValType::B8x16 = 0x77, ValType::B16x8 = 0x76, ValType::B32x4 = 0x75 } |
| This is used to indicate local types. More... | |
Functions | |
| const char * | TypeToString (MVT Ty) |
| unsigned | GetDefaultP2Align (unsigned Opcode) |
| Return the default p2align value for a load or store with the given opcode. More... | |
| ValType | toValType (const MVT &Ty) |
| FastISel * | createFastISel (FunctionLoweringInfo &funcInfo, const TargetLibraryInfo *libInfo) |
| bool | isArgument (const MachineInstr &MI) |
| bool | isCopy (const MachineInstr &MI) |
| bool | isTee (const MachineInstr &MI) |
| bool | isChild (const MachineInstr &MI, const WebAssemblyFunctionInfo &MFI) |
| Test whether MI is a child of some other node in an expression tree. More... | |
Variables | |
| static const unsigned | LoadAddressOperandNo = 3 |
| The operand number of the load or store address in load/store instructions. More... | |
| static const unsigned | StoreAddressOperandNo = 2 |
| static const unsigned | LoadP2AlignOperandNo = 1 |
| The operand number of the load or store p2align in load/store instructions. More... | |
| static const unsigned | StoreP2AlignOperandNo = 0 |
| static const unsigned | Nop = 0x01 |
| Instruction opcodes emitted via means other than CodeGen. More... | |
| static const unsigned | End = 0x0b |
|
strong |
This is used to indicate block signatures.
| Enumerator | |
|---|---|
| Void | |
| I32 | |
| I64 | |
| F32 | |
| F64 | |
| I8x16 | |
| I16x8 | |
| I32x4 | |
| F32x4 | |
| B8x16 | |
| B16x8 | |
| B32x4 | |
Definition at line 143 of file WebAssemblyMCTargetDesc.h.
Definition at line 45 of file WebAssemblyMCTargetDesc.h.
|
strong |
This is used to indicate local types.
| Enumerator | |
|---|---|
| I32 | |
| I64 | |
| F32 | |
| F64 | |
| I8x16 | |
| I16x8 | |
| I32x4 | |
| F32x4 | |
| B8x16 | |
| B16x8 | |
| B32x4 | |
Definition at line 159 of file WebAssemblyMCTargetDesc.h.
| FastISel * llvm::WebAssembly::createFastISel | ( | FunctionLoweringInfo & | funcInfo, |
| const TargetLibraryInfo * | libInfo | ||
| ) |
Definition at line 1274 of file WebAssemblyFastISel.cpp.
Return the default p2align value for a load or store with the given opcode.
Definition at line 100 of file WebAssemblyMCTargetDesc.h.
References llvm_unreachable.
Referenced by llvm::WebAssemblyInstPrinter::printWebAssemblyP2AlignOperand(), and RewriteP2Align().
| bool llvm::WebAssembly::isArgument | ( | const MachineInstr & | MI | ) |
Definition at line 20 of file WebAssemblyUtilities.cpp.
References llvm::MachineInstr::getOpcode().
Referenced by HasArgumentDef().
| bool llvm::WebAssembly::isChild | ( | const MachineInstr & | MI, |
| const WebAssemblyFunctionInfo & | MFI | ||
| ) |
Test whether MI is a child of some other node in an expression tree.
Definition at line 61 of file WebAssemblyUtilities.cpp.
References llvm::MachineInstr::getNumOperands(), llvm::MachineInstr::getOperand(), llvm::MachineOperand::getReg(), llvm::MachineOperand::isDef(), llvm::MachineOperand::isImplicit(), llvm::MachineOperand::isReg(), llvm::TargetRegisterInfo::isVirtualRegister(), and llvm::WebAssemblyFunctionInfo::isVRegStackified().
Referenced by PlaceBlockMarker().
| bool llvm::WebAssembly::isCopy | ( | const MachineInstr & | MI | ) |
Definition at line 36 of file WebAssemblyUtilities.cpp.
References llvm::MachineInstr::getOpcode().
| bool llvm::WebAssembly::isTee | ( | const MachineInstr & | MI | ) |
Definition at line 48 of file WebAssemblyUtilities.cpp.
References llvm::MachineInstr::getOpcode().
| WebAssembly::ValType llvm::WebAssembly::toValType | ( | const MVT & | Ty | ) |
Definition at line 138 of file WebAssemblyMCTargetDesc.cpp.
References llvm::MVT::f32, F32, llvm::MVT::f64, F64, llvm::MVT::i32, I32, llvm::MVT::i64, I64, llvm_unreachable, and llvm::MVT::SimpleTy.
Referenced by llvm::WebAssemblyTargetELFStreamer::emitLocal().
Definition at line 226 of file WebAssemblyInstPrinter.cpp.
References llvm::MVT::f32, llvm::MVT::f64, llvm::MVT::i32, llvm::MVT::i64, llvm_unreachable, llvm::MVT::SimpleTy, llvm::MVT::v16i8, llvm::MVT::v4f32, llvm::MVT::v4i32, and llvm::MVT::v8i16.
Referenced by llvm::WebAssemblyTargetAsmStreamer::emitIndirectFunctionType(), and PrintTypes().
Definition at line 175 of file WebAssemblyMCTargetDesc.h.
Referenced by llvm::RuntimePointerChecking::CheckingPtrGroup::addPointer(), llvm::User::allocHungoffUses(), llvm::yaml::BlockScalarNode::BlockScalarNode(), BuildVectorFromScalar(), llvm::IDFCalculator< NodeTy >::calculate(), llvm::calculateClrEHStateNumbers(), CloneNodeWithValues(), llvm::ProfileSummaryBuilder::computeDetailedSummary(), llvm::SystemZInstrInfo::convertToThreeAddress(), llvm::convertWideToUTF8(), llvm::AArch64InstrInfo::copyPhysRegTuple(), decodeUTF8(), llvm::SpecificBumpPtrAllocator< llvm::LazyCallGraph::SCC >::DestroyAll(), llvm::DominatorTree::dominates(), llvm::OnDiskChainedHashTableGenerator< Info >::Emit(), llvm::WebAssemblyTargetELFStreamer::emitEndFunc(), EmitGenDwarfInfo(), llvm::AArch64FrameLowering::emitPrologue(), llvm::SystemZSelectionDAGInfo::EmitTargetCodeForMemchr(), llvm::SplitEditor::enterIntvAtEnd(), expandBounds(), llvm::MachineFunction::extractLoadMemRefs(), llvm::MachineFunction::extractStoreMemRefs(), llvm::SIScheduleDAGMI::fillVgprSgprCost(), llvm::SchedDFSImpl::finalize(), findCFILocation(), fitsRegularPattern(), llvm::ScheduleDAGInstrs::fixupKills(), llvm::format_provider< llvm::iterator_range< IterT > >::format(), generateUnsignedDivisionCode(), llvm::DWARFDebugAbbrev::getAbbreviationDeclarationSet(), llvm::MachineLoop::getBottomBlock(), getBoundedStrlen(), llvm::Loop::LocRange::getEnd(), llvm::MCSection::getEndSymbol(), llvm::MCDwarfLineTableHeader::getFile(), llvm::HexagonInstrInfo::getFirstNonDbgInst(), llvm::DIExpression::getFragmentInfo(), llvm::CodeViewContext::getFunctionLineEntries(), llvm::SystemZTTIImpl::getIntImmCost(), llvm::TargetLibraryInfoImpl::getLibFunc(), llvm::object::ArchiveMemberHeader::getName(), llvm::OperandBundleUser< InvokeInst, User::op_iterator >::getNumTotalBundleOperands(), llvm::RegisterBankInfo::getOperandsMapping(), llvm::getToken(), llvm::Use::getUser(), llvm::RegisterBankInfo::OperandsMapper::getVRegs(), llvm::MCSection::hasEnded(), INITIALIZE_PASS(), llvm::StringSet< AllocatorTy >::insert(), llvm::SetVector< const llvm::Constant *, SmallVector< const llvm::Constant *, N >, SmallDenseSet< const llvm::Constant *, N > >::insert(), llvm::object::ExportDirectoryEntryRef::isForwarder(), llvm::isKnownNotFullPoison(), llvm::LiveRange::isUndefIn(), llvm::detail::join_impl(), lowerVECTOR_SHUFFLE_ILVEV(), lowerVECTOR_SHUFFLE_ILVL(), lowerVECTOR_SHUFFLE_ILVOD(), lowerVECTOR_SHUFFLE_ILVR(), lowerVECTOR_SHUFFLE_PCKEV(), lowerVECTOR_SHUFFLE_PCKOD(), MarkIndicesSafe(), llvm::object::COFFObjectFile::moveSymbolNext(), multikey_qsort(), nextIfDebug(), llvm::BranchProbability::normalizeProbabilities(), llvm::Loop::LocRange::operator bool(), llvm::MCSymbol::operator new(), llvm::opt::OptTable::ParseArgs(), parseDouble(), llvm::opt::OptTable::ParseOneArg(), llvm::LLParser::parseTypeAtBeginning(), PlaceBlockMarker(), PlaceLoopMarker(), llvm::RegisterBank::print(), rangeOnlyContains(), false::Chain::rangeOverlapsWith(), readCoverageMappingData(), llvm::InstrProfLookupTrait::ReadData(), llvm::GCOVFunction::readGCDA(), llvm::sampleprof::SampleProfileReaderBinary::readHeader(), llvm::sampleprof::SampleProfileReaderBinary::readNumber(), llvm::sampleprof::SampleProfileReaderBinary::readString(), llvm::RegisterBankInfo::RegisterBankInfo(), llvm::RuntimeDyldMachOCRTPBase< Impl >::registerEHFrames(), llvm::LiveRange::removeSegment(), llvm::SlotIndexes::repairIndexesInRange(), llvm::RegBankSelect::RepairingPlacement::RepairingPlacement(), replaceFallthroughCoroEnd(), llvm::R600InstrInfo::reserveIndirectRegisters(), llvm::RegBankSelect::runOnMachineFunction(), llvm::yaml::ScalarNode::ScalarNode(), llvm::yaml::Output::scalarString(), scan(), scanInlinedCode(), llvm::yaml::Scanner::setError(), shouldSpeculateInstrs(), shouldUseMmap(), simplifyX86extrq(), simplifyX86insertq(), llvm::simple_ilist< T, Options >::sort(), llvm::stripDebugInfo(), toggleBundleKillFlag(), tryBuildVectorReplicate(), fuzzer::TraceState::TryToAddDesiredData(), tryToreplicateChunks(), UpdatePosition(), llvm::RegisterBank::verify(), and llvm::MachObjectWriter::writeObject().
The operand number of the load or store address in load/store instructions.
Definition at line 135 of file WebAssemblyMCTargetDesc.h.
Referenced by llvm::WebAssemblyRegisterInfo::eliminateFrameIndex().
The operand number of the load or store p2align in load/store instructions.
Definition at line 139 of file WebAssemblyMCTargetDesc.h.
Instruction opcodes emitted via means other than CodeGen.
Definition at line 174 of file WebAssemblyMCTargetDesc.h.
Referenced by llvm::HexagonMCInstrInfo::padEndloop().
Definition at line 136 of file WebAssemblyMCTargetDesc.h.
Referenced by llvm::WebAssemblyRegisterInfo::eliminateFrameIndex().
Definition at line 140 of file WebAssemblyMCTargetDesc.h.
1.8.6