LLVM API Documentation

Defines | Functions
SparcAsmPrinter.cpp File Reference
#include "Sparc.h"
#include "InstPrinter/SparcInstPrinter.h"
#include "MCTargetDesc/SparcMCExpr.h"
#include "SparcInstrInfo.h"
#include "SparcTargetMachine.h"
#include "SparcTargetStreamer.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/CodeGen/AsmPrinter.h"
#include "llvm/CodeGen/MachineInstr.h"
#include "llvm/CodeGen/MachineModuleInfoImpls.h"
#include "llvm/CodeGen/MachineRegisterInfo.h"
#include "llvm/CodeGen/TargetLoweringObjectFileImpl.h"
#include "llvm/IR/Mangler.h"
#include "llvm/MC/MCAsmInfo.h"
#include "llvm/MC/MCContext.h"
#include "llvm/MC/MCInst.h"
#include "llvm/MC/MCStreamer.h"
#include "llvm/MC/MCSymbol.h"
#include "llvm/Support/TargetRegistry.h"
#include "llvm/Support/raw_ostream.h"
Include dependency graph for SparcAsmPrinter.cpp:

Go to the source code of this file.

Defines

#define DEBUG_TYPE   "asm-printer"

Functions

static MCOperand createSparcMCOperand (SparcMCExpr::VariantKind Kind, MCSymbol *Sym, MCContext &OutContext)
static MCOperand createPCXCallOP (MCSymbol *Label, MCContext &OutContext)
static MCOperand createPCXRelExprOp (SparcMCExpr::VariantKind Kind, MCSymbol *GOTLabel, MCSymbol *StartLabel, MCSymbol *CurLabel, MCContext &OutContext)
static void EmitCall (MCStreamer &OutStreamer, MCOperand &Callee, const MCSubtargetInfo &STI)
static void EmitSETHI (MCStreamer &OutStreamer, MCOperand &Imm, MCOperand &RD, const MCSubtargetInfo &STI)
static void EmitBinary (MCStreamer &OutStreamer, unsigned Opcode, MCOperand &RS1, MCOperand &Src2, MCOperand &RD, const MCSubtargetInfo &STI)
static void EmitOR (MCStreamer &OutStreamer, MCOperand &RS1, MCOperand &Imm, MCOperand &RD, const MCSubtargetInfo &STI)
static void EmitADD (MCStreamer &OutStreamer, MCOperand &RS1, MCOperand &RS2, MCOperand &RD, const MCSubtargetInfo &STI)
static void EmitSHL (MCStreamer &OutStreamer, MCOperand &RS1, MCOperand &Imm, MCOperand &RD, const MCSubtargetInfo &STI)
static void EmitHiLo (MCStreamer &OutStreamer, MCSymbol *GOTSym, SparcMCExpr::VariantKind HiKind, SparcMCExpr::VariantKind LoKind, MCOperand &RD, MCContext &OutContext, const MCSubtargetInfo &STI)
void LLVMInitializeSparcAsmPrinter ()

Define Documentation

#define DEBUG_TYPE   "asm-printer"

Definition at line 37 of file SparcAsmPrinter.cpp.


Function Documentation

static MCOperand createPCXCallOP ( MCSymbol Label,
MCContext OutContext 
) [static]

Definition at line 87 of file SparcAsmPrinter.cpp.

References createSparcMCOperand(), and llvm::SparcMCExpr::VK_Sparc_None.

static MCOperand createPCXRelExprOp ( SparcMCExpr::VariantKind  Kind,
MCSymbol GOTLabel,
MCSymbol StartLabel,
MCSymbol CurLabel,
MCContext OutContext 
) [static]
static MCOperand createSparcMCOperand ( SparcMCExpr::VariantKind  Kind,
MCSymbol Sym,
MCContext OutContext 
) [static]
static void EmitADD ( MCStreamer OutStreamer,
MCOperand RS1,
MCOperand RS2,
MCOperand RD,
const MCSubtargetInfo STI 
) [static]

Definition at line 149 of file SparcAsmPrinter.cpp.

References EmitBinary().

static void EmitBinary ( MCStreamer OutStreamer,
unsigned  Opcode,
MCOperand RS1,
MCOperand Src2,
MCOperand RD,
const MCSubtargetInfo STI 
) [static]
static void EmitCall ( MCStreamer OutStreamer,
MCOperand Callee,
const MCSubtargetInfo STI 
) [static]
static void EmitHiLo ( MCStreamer OutStreamer,
MCSymbol GOTSym,
SparcMCExpr::VariantKind  HiKind,
SparcMCExpr::VariantKind  LoKind,
MCOperand RD,
MCContext OutContext,
const MCSubtargetInfo STI 
) [static]

Definition at line 162 of file SparcAsmPrinter.cpp.

References createSparcMCOperand(), EmitOR(), and EmitSETHI().

static void EmitOR ( MCStreamer OutStreamer,
MCOperand RS1,
MCOperand Imm,
MCOperand RD,
const MCSubtargetInfo STI 
) [static]

Definition at line 143 of file SparcAsmPrinter.cpp.

References EmitBinary().

Referenced by EmitHiLo().

static void EmitSETHI ( MCStreamer OutStreamer,
MCOperand Imm,
MCOperand RD,
const MCSubtargetInfo STI 
) [static]
static void EmitSHL ( MCStreamer OutStreamer,
MCOperand RS1,
MCOperand Imm,
MCOperand RD,
const MCSubtargetInfo STI 
) [static]

Definition at line 155 of file SparcAsmPrinter.cpp.

References EmitBinary().

Definition at line 463 of file SparcAsmPrinter.cpp.

References llvm::TheSparcTarget, llvm::TheSparcV9Target, llvm::X, and Y.