LLVM 24.0.0git
RISCVAsmBackend.cpp File Reference
#include "RISCVAsmBackend.h"
#include "RISCVFixupKinds.h"
#include "llvm/ADT/APInt.h"
#include "llvm/MC/MCAsmInfo.h"
#include "llvm/MC/MCAssembler.h"
#include "llvm/MC/MCContext.h"
#include "llvm/MC/MCELFObjectWriter.h"
#include "llvm/MC/MCExpr.h"
#include "llvm/MC/MCMachObjectWriter.h"
#include "llvm/MC/MCObjectWriter.h"
#include "llvm/MC/MCSymbol.h"
#include "llvm/MC/MCValue.h"
#include "llvm/Support/EndianStream.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/LEB128.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/BinaryFormat/ELFRelocs/RISCV.def"
#include "llvm/BinaryFormat/ELFRelocs/RISCV_nonstandard.def"

Go to the source code of this file.

Classes

class  DarwinRISCVAsmBackend

Macros

#define ELF_RELOC(NAME, ID)
#define ELF_RISCV_NONSTANDARD_RELOC(_VENDOR, NAME, ID)

Functions

static unsigned getRelaxedOpcode (unsigned Opcode, ArrayRef< MCOperand > Operands, const MCSubtargetInfo &STI)
static uint64_t adjustFixupValue (const MCFixup &Fixup, uint64_t Value, MCContext &Ctx)
const MCFixup * getPCRelHiFixup (const MCSpecifierExpr &Expr, const MCFragment **DFOut)
static bool relaxableFixupNeedsRelocation (const MCFixupKind Kind)
static bool isDataFixup (unsigned Kind)

Macro Definition Documentation

◆ ELF_RELOC

#define ELF_RELOC ( NAME,
ID )
Value:
.Case(#NAME, ID)

◆ ELF_RISCV_NONSTANDARD_RELOC

#define ELF_RISCV_NONSTANDARD_RELOC ( _VENDOR,
NAME,
ID )
Value:
.Case(#NAME, ID)

Function Documentation

◆ adjustFixupValue()

◆ getPCRelHiFixup()

◆ getRelaxedOpcode()

unsigned getRelaxedOpcode ( unsigned Opcode,
ArrayRef< MCOperand > Operands,
const MCSubtargetInfo & STI )
static

Definition at line 148 of file RISCVAsmBackend.cpp.

References llvm::MCSubtargetInfo::hasFeature(), Operands, and Reg.

◆ isDataFixup()

bool isDataFixup ( unsigned Kind)
static

◆ relaxableFixupNeedsRelocation()