LLVM 20.0.0git
|
#include "MCTargetDesc/HexagonMCCodeEmitter.h"
#include "MCTargetDesc/HexagonBaseInfo.h"
#include "MCTargetDesc/HexagonFixupKinds.h"
#include "MCTargetDesc/HexagonMCExpr.h"
#include "MCTargetDesc/HexagonMCInstrInfo.h"
#include "MCTargetDesc/HexagonMCTargetDesc.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/MC/MCContext.h"
#include "llvm/MC/MCExpr.h"
#include "llvm/MC/MCFixup.h"
#include "llvm/MC/MCInst.h"
#include "llvm/MC/MCInstrDesc.h"
#include "llvm/MC/MCInstrInfo.h"
#include "llvm/MC/MCRegisterInfo.h"
#include "llvm/MC/MCSubtargetInfo.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/Compiler.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/EndianStream.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/raw_ostream.h"
#include <cassert>
#include <cstddef>
#include <cstdint>
#include <map>
#include <string>
#include <vector>
#include "HexagonGenMCCodeEmitter.inc"
Go to the source code of this file.
Macros | |
#define | DEBUG_TYPE "mccodeemitter" |
#define | _ fixup_Invalid |
#define | P(x) Hexagon::fixup_Hexagon##x |
Functions | |
STATISTIC (MCNumEmitted, "Number of MC instructions emitted") | |
static bool | RegisterMatches (MCRegister Consumer, MCRegister Producer, MCRegister Producer2) |
static void | raise_relocation_error (unsigned Width, unsigned Kind) |
static bool | isPCRel (unsigned Kind) |
Variables | |
static const unsigned | fixup_Invalid = ~0u |
static const std::map< unsigned, std::vector< unsigned > > | ExtFixups |
static const std::map< unsigned, std::vector< unsigned > > | StdFixups |
#define _ fixup_Invalid |
Definition at line 46 of file HexagonMCCodeEmitter.cpp.
#define DEBUG_TYPE "mccodeemitter" |
Definition at line 37 of file HexagonMCCodeEmitter.cpp.
#define P | ( | x | ) | Hexagon::fixup_Hexagon##x |
Definition at line 47 of file HexagonMCCodeEmitter.cpp.
Definition at line 549 of file HexagonMCCodeEmitter.cpp.
References llvm::Hexagon::fixup_Hexagon_32_PCREL, llvm::Hexagon::fixup_Hexagon_6_PCREL_X, llvm::Hexagon::fixup_Hexagon_B13_PCREL, llvm::Hexagon::fixup_Hexagon_B13_PCREL_X, llvm::Hexagon::fixup_Hexagon_B15_PCREL, llvm::Hexagon::fixup_Hexagon_B15_PCREL_X, llvm::Hexagon::fixup_Hexagon_B22_PCREL, llvm::Hexagon::fixup_Hexagon_B22_PCREL_X, llvm::Hexagon::fixup_Hexagon_B32_PCREL_X, llvm::Hexagon::fixup_Hexagon_B7_PCREL, llvm::Hexagon::fixup_Hexagon_B7_PCREL_X, llvm::Hexagon::fixup_Hexagon_B9_PCREL, llvm::Hexagon::fixup_Hexagon_B9_PCREL_X, llvm::Hexagon::fixup_Hexagon_GD_PLT_B22_PCREL, llvm::Hexagon::fixup_Hexagon_GD_PLT_B22_PCREL_X, llvm::Hexagon::fixup_Hexagon_LD_PLT_B22_PCREL, llvm::Hexagon::fixup_Hexagon_LD_PLT_B22_PCREL_X, and llvm::Hexagon::fixup_Hexagon_PLT_B22_PCREL.
Referenced by llvm::getFixupForSize(), and getImmFixupKind().
Definition at line 449 of file HexagonMCCodeEmitter.cpp.
References llvm::report_fatal_error(), and llvm::raw_string_ostream::str().
|
static |
Definition at line 390 of file HexagonMCCodeEmitter.cpp.
References llvm::HexagonMCInstrInfo::IsSingleConsumerRefPairProducer().
Referenced by llvm::HexagonMCCodeEmitter::getMachineOpValue().
STATISTIC | ( | MCNumEmitted | , |
"Number of MC instructions emitted" | |||
) |
Definition at line 48 of file HexagonMCCodeEmitter.cpp.
Definition at line 44 of file HexagonMCCodeEmitter.cpp.
Definition at line 172 of file HexagonMCCodeEmitter.cpp.