LLVM 23.0.0git
hexagon.h File Reference

Go to the source code of this file.

Classes

 Instruction mask entry for R_HEX_6_X / R_HEX_16_X lookup. More...

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.

Enumerations

enum  llvm::jitlink::hexagon::EdgeKind_hexagon : Edge::Kind {
  llvm::jitlink::hexagon::Pointer32 = Edge::FirstRelocation , llvm::jitlink::hexagon::PCRel32 , llvm::jitlink::hexagon::B22_PCREL , llvm::jitlink::hexagon::B15_PCREL ,
  llvm::jitlink::hexagon::B13_PCREL , llvm::jitlink::hexagon::B9_PCREL , llvm::jitlink::hexagon::B7_PCREL , llvm::jitlink::hexagon::HI16 ,
  llvm::jitlink::hexagon::LO16 , llvm::jitlink::hexagon::Word32_6_X , llvm::jitlink::hexagon::B32_PCREL_X , llvm::jitlink::hexagon::B22_PCREL_X ,
  llvm::jitlink::hexagon::B15_PCREL_X , llvm::jitlink::hexagon::B13_PCREL_X , llvm::jitlink::hexagon::B9_PCREL_X , llvm::jitlink::hexagon::B7_PCREL_X ,
  llvm::jitlink::hexagon::Word6_X , llvm::jitlink::hexagon::Word6_PCREL_X , llvm::jitlink::hexagon::Word8_X , llvm::jitlink::hexagon::Word9_X ,
  llvm::jitlink::hexagon::Word10_X , llvm::jitlink::hexagon::Word11_X , llvm::jitlink::hexagon::Word12_X , llvm::jitlink::hexagon::Word16_X
}
 Represents Hexagon fixup kinds. More...

Functions

LLVM_ABI const charllvm::jitlink::hexagon::getEdgeKindName (Edge::Kind K)
 Returns a string name for the given Hexagon edge kind.
constexpr uint32_t llvm::jitlink::hexagon::applyMask (uint32_t Mask, uint32_t Data)
 Spread data bits into instruction word according to mask.
bool llvm::jitlink::hexagon::isDuplex (uint32_t Insn)
Expected< uint32_tllvm::jitlink::hexagon::findMaskR6 (uint32_t Insn)
Expected< uint32_tllvm::jitlink::hexagon::findMaskR8 (uint32_t Insn)
Expected< uint32_tllvm::jitlink::hexagon::findMaskR11 (uint32_t Insn)
Expected< uint32_tllvm::jitlink::hexagon::findMaskR16 (uint32_t Insn)
Error llvm::jitlink::hexagon::applyFixup (LinkGraph &G, Block &B, const Edge &E)
 Apply fixup expression for edge to block content.

Variables

constexpr uint32_t llvm::jitlink::hexagon::PointerSize = 4
 Hexagon pointer size.
constexpr InstructionMask llvm::jitlink::hexagon::R6Masks []
 Mask table for R_HEX_6_X relocations, indexed by instruction class.
constexpr uint32_t llvm::jitlink::hexagon::InstParsePacketEnd = 0x0000c000