LLVM 20.0.0git
|
#include "ARMInstPrinter.h"
#include "Utils/ARMBaseInfo.h"
#include "MCTargetDesc/ARMAddressingModes.h"
#include "MCTargetDesc/ARMBaseInfo.h"
#include "llvm/MC/MCAsmInfo.h"
#include "llvm/MC/MCExpr.h"
#include "llvm/MC/MCInst.h"
#include "llvm/MC/MCInstrAnalysis.h"
#include "llvm/MC/MCInstrInfo.h"
#include "llvm/MC/MCRegisterInfo.h"
#include "llvm/MC/MCSubtargetInfo.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/MathExtras.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/TargetParser/SubtargetFeature.h"
#include <algorithm>
#include <cassert>
#include <cstdint>
#include "ARMGenAsmWriter.inc"
Go to the source code of this file.
Macros | |
#define | DEBUG_TYPE "asm-printer" |
#define | PRINT_ALIAS_INSTR |
Functions | |
static unsigned | translateShiftImm (unsigned imm) |
translateShiftImm - Convert shift immediate from 0-31 to 1-32 for printing. | |
static void | printRegImmShift (raw_ostream &O, ARM_AM::ShiftOpc ShOpc, unsigned ShImm, const ARMInstPrinter &printer) |
#define DEBUG_TYPE "asm-printer" |
Definition at line 35 of file ARMInstPrinter.cpp.
#define PRINT_ALIAS_INSTR |
Definition at line 37 of file ARMInstPrinter.cpp.
|
static |
Definition at line 52 of file ARMInstPrinter.cpp.
References assert(), llvm::MCInstPrinter::Immediate, llvm::ARM_AM::lsl, llvm::ARM_AM::no_shift, printer, llvm::ARM_AM::ror, llvm::ARM_AM::rrx, and translateShiftImm().
Referenced by llvm::ARMInstPrinter::printAddrMode2OffsetOperand(), llvm::ARMInstPrinter::printAM2PreOrOffsetIndexOp(), llvm::ARMInstPrinter::printMveAddrModeRQOperand(), llvm::ARMInstPrinter::printSORegImmOperand(), and llvm::ARMInstPrinter::printT2SOOperand().
translateShiftImm - Convert shift immediate from 0-31 to 1-32 for printing.
getSORegOffset returns an integer from 0-31, representing '32' as 0.
Definition at line 43 of file ARMInstPrinter.cpp.
References assert().
Referenced by llvm::ARMInstPrinter::printInst(), and printRegImmShift().