LLVM  14.0.0git
Classes | Macros | Functions | Variables
AArch64InstPrinter.cpp File Reference
#include "AArch64InstPrinter.h"
#include "MCTargetDesc/AArch64AddressingModes.h"
#include "Utils/AArch64BaseInfo.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/MC/MCAsmInfo.h"
#include "llvm/MC/MCExpr.h"
#include "llvm/MC/MCInst.h"
#include "llvm/MC/MCRegisterInfo.h"
#include "llvm/MC/MCSubtargetInfo.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/Format.h"
#include "llvm/Support/MathExtras.h"
#include "llvm/Support/raw_ostream.h"
#include <cassert>
#include <cstdint>
#include <string>
#include "AArch64GenAsmWriter.inc"
#include "AArch64GenAsmWriter1.inc"
Include dependency graph for AArch64InstPrinter.cpp:

Go to the source code of this file.

Classes

struct  LdStNInstrDesc
 

Macros

#define DEBUG_TYPE   "asm-printer"
 
#define GET_INSTRUCTION_NAME
 
#define PRINT_ALIAS_INSTR
 
#define GET_INSTRUCTION_NAME
 
#define PRINT_ALIAS_INSTR
 

Functions

static bool isTblTbxInstruction (unsigned Opcode, StringRef &Layout, bool &IsTbx)
 
static const LdStNInstrDescgetLdStNInstrDesc (unsigned Opcode)
 
static void printMemExtendImpl (bool SignExtend, bool DoShift, unsigned Width, char SrcRegKind, raw_ostream &O)
 
static unsigned getNextVectorRegister (unsigned Reg, unsigned Stride=1)
 

Variables

static const LdStNInstrDesc LdStNInstInfo []
 
static const unsigned MatrixZADRegisterTable []
 

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "asm-printer"

Definition at line 35 of file AArch64InstPrinter.cpp.

◆ GET_INSTRUCTION_NAME [1/2]

#define GET_INSTRUCTION_NAME

Definition at line 40 of file AArch64InstPrinter.cpp.

◆ GET_INSTRUCTION_NAME [2/2]

#define GET_INSTRUCTION_NAME

Definition at line 40 of file AArch64InstPrinter.cpp.

◆ PRINT_ALIAS_INSTR [1/2]

#define PRINT_ALIAS_INSTR

Definition at line 41 of file AArch64InstPrinter.cpp.

◆ PRINT_ALIAS_INSTR [2/2]

#define PRINT_ALIAS_INSTR

Definition at line 41 of file AArch64InstPrinter.cpp.

Function Documentation

◆ getLdStNInstrDesc()

static const LdStNInstrDesc* getLdStNInstrDesc ( unsigned  Opcode)
static

◆ getNextVectorRegister()

static unsigned getNextVectorRegister ( unsigned  Reg,
unsigned  Stride = 1 
)
static

Definition at line 1246 of file AArch64InstPrinter.cpp.

References llvm_unreachable, and Reg.

Referenced by llvm::AArch64InstPrinter::printVectorList().

◆ isTblTbxInstruction()

static bool isTblTbxInstruction ( unsigned  Opcode,
StringRef Layout,
bool &  IsTbx 
)
static

Definition at line 319 of file AArch64InstPrinter.cpp.

Referenced by llvm::AArch64AppleInstPrinter::printInst().

◆ printMemExtendImpl()

static void printMemExtendImpl ( bool  SignExtend,
bool  DoShift,
unsigned  Width,
char  SrcRegKind,
raw_ostream O 
)
static

Variable Documentation

◆ LdStNInstInfo

const LdStNInstrDesc LdStNInstInfo[]
static

Definition at line 364 of file AArch64InstPrinter.cpp.

Referenced by getLdStNInstrDesc().

◆ MatrixZADRegisterTable

const unsigned MatrixZADRegisterTable[]
static
Initial value:
= {
AArch64::ZAD0, AArch64::ZAD1, AArch64::ZAD2, AArch64::ZAD3,
AArch64::ZAD4, AArch64::ZAD5, AArch64::ZAD6, AArch64::ZAD7
}

Definition at line 1343 of file AArch64InstPrinter.cpp.

Referenced by llvm::AArch64InstPrinter::printMatrixTileList().