LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Macros | Functions
AArch64AsmPrinter.cpp File Reference
#include "AArch64AsmPrinter.h"
#include "InstPrinter/AArch64InstPrinter.h"
#include "llvm/DebugInfo.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/CodeGen/MachineModuleInfoImpls.h"
#include "llvm/CodeGen/TargetLoweringObjectFileImpl.h"
#include "llvm/MC/MCAsmInfo.h"
#include "llvm/MC/MCInst.h"
#include "llvm/MC/MCSymbol.h"
#include "llvm/Support/TargetRegistry.h"
#include "llvm/Target/Mangler.h"
#include "AArch64GenMCPseudoLowering.inc"
Include dependency graph for AArch64AsmPrinter.cpp:

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "asm-printer"
 

Functions

static bool printModifiedFPRAsmOperand (const MachineOperand &MO, const TargetRegisterInfo *TRI, char RegType, raw_ostream &O)
 
static bool printModifiedGPRAsmOperand (const MachineOperand &MO, const TargetRegisterInfo *TRI, const TargetRegisterClass &RegClass, raw_ostream &O)
 
void LLVMInitializeAArch64AsmPrinter ()
 

Macro Definition Documentation

#define DEBUG_TYPE   "asm-printer"

Definition at line 15 of file AArch64AsmPrinter.cpp.

Function Documentation

void LLVMInitializeAArch64AsmPrinter ( )

Definition at line 302 of file AArch64AsmPrinter.cpp.

References llvm::TheAArch64Target, and llvm::X.

static bool printModifiedFPRAsmOperand ( const MachineOperand MO,
const TargetRegisterInfo TRI,
char  RegType,
raw_ostream O 
)
static

Try to print a floating-point register as if it belonged to a specified register-class. For example the inline asm operand modifier "b" requires its argument to be printed as "bN".

Definition at line 33 of file AArch64AsmPrinter.cpp.

References llvm::MCRegisterInfo::getEncodingValue(), llvm::MachineOperand::getReg(), llvm::MachineOperand::isReg(), and llvm::MCRegAliasIterator::isValid().

Referenced by llvm::AArch64AsmPrinter::PrintAsmOperand().

static bool printModifiedGPRAsmOperand ( const MachineOperand MO,
const TargetRegisterInfo TRI,
const TargetRegisterClass RegClass,
raw_ostream O 
)
static

Implements the 'w' and 'x' inline asm operand modifiers, which print a GPR with the obvious type and an immediate 0 as either wzr or xzr.

Definition at line 52 of file AArch64AsmPrinter.cpp.

References llvm::TargetRegisterClass::contains(), llvm::MachineOperand::getImm(), llvm::MachineOperand::getReg(), llvm::AArch64InstPrinter::getRegisterName(), llvm::MachineOperand::isImm(), llvm::MachineOperand::isReg(), llvm::MCRegAliasIterator::isValid(), and llvm::cl::Prefix.

Referenced by llvm::AArch64AsmPrinter::PrintAsmOperand().