LLVM: lib/Target/Mips/MCTargetDesc/MipsMCAsmInfo.cpp Source File (original) (raw)

1

2

3

4

5

6

7

8

9

10

11

12

18

19using namespace llvm;

20

21void MipsELFMCAsmInfo::anchor() {}

22

26

29

30 if (TheTriple.isMIPS64() && !ABI.IsN32())

32

33 if (ABI.IsO32())

35 else if (ABI.IsN32() || ABI.IsN64())

38

50}

51

52void MipsCOFFMCAsmInfo::anchor() {}

53

64

71

74 int64_t AbsVal;

75

80 break;

82

83

85 return;

87 OS << "%call_hi";

88 break;

90 OS << "%call_lo";

91 break;

93 OS << "%dtprel_hi";

94 break;

96 OS << "%dtprel_lo";

97 break;

99 OS << "%got";

100 break;

102 OS << "%gottprel";

103 break;

105 OS << "%call16";

106 break;

108 OS << "%got_disp";

109 break;

111 OS << "%got_hi";

112 break;

114 OS << "%got_lo";

115 break;

117 OS << "%got_page";

118 break;

120 OS << "%got_ofst";

121 break;

123 OS << "%gp_rel";

124 break;

126 OS << "%hi";

127 break;

129 OS << "%higher";

130 break;

132 OS << "%highest";

133 break;

135 OS << "%lo";

136 break;

138 OS << "%neg";

139 break;

141 OS << "%pcrel_hi";

142 break;

144 OS << "%pcrel_lo";

145 break;

147 OS << "%tlsgd";

148 break;

150 OS << "%tlsldm";

151 break;

153 OS << "%tprel_hi";

154 break;

156 OS << "%tprel_lo";

157 break;

158 }

159

160 OS << '(';

162 OS << AbsVal;

163 else

165 OS << ')';

166}

167

174

175 return true;

176 }

177 }

178 }

179 }

180 return false;

181}

182

185

186

188 const MCExpr *SubExpr =

191 ->getSubExpr();

193 return false;

194

196 return true;

197 }

198

200 return false;

203}

204

209

213 return evaluate(Expr, Res, Asm);

214}

215

220

223 return evaluate(Expr, Res, Asm);

224}

static bool evaluate(const MCSpecifierExpr &Expr, MCValue &Res, const MCAssembler *Asm)

static void printImpl(const MCAsmInfo &MAI, raw_ostream &OS, const MCSpecifierExpr &Expr)

Definition MipsMCAsmInfo.cpp:72

This class is intended to be used as a base class for asm properties and features specific to the tar...

const char * Data16bitsDirective

const char * Data64bitsDirective

ExceptionHandling ExceptionsType

Exception handling format for the target. Defaults to None.

bool AllowDollarAtStartOfIdentifier

This is true if the assembler allows the "$" character at the start of of a string to be lexed as an ...

StringRef PrivateGlobalPrefix

This prefix is used for globals like constant pool entries that are completely private to the ....

const char * Data32bitsDirective

WinEH::EncodingType WinEHEncodingType

Windows exception handling data (.pdata) encoding. Defaults to Invalid.

StringRef PrivateLabelPrefix

This prefix is used for labels for basic blocks.

void printExpr(raw_ostream &, const MCExpr &) const

bool AllowAtInName

This is true if the assembler allows @ characters in symbol names.

bool UseAssignmentForEHBegin

bool SupportsDebugInformation

True if target supports emission of debugging information.

bool HasSingleParameterDotFile

True if the target has a single parameter .file directive, this is true for ELF targets.

bool AlignmentIsInBytes

If this is true (the default) then the asmprinter emits ".align N" directives, where N is the number ...

const char * ZeroDirective

This should be set to the directive used to get some number of zero (and non-zero if supported by the...

bool DwarfRegNumForCFI

True if dwarf register numbers are printed instead of symbolic register names in ....

bool IsLittleEndian

True if target is little endian. Default is true.

unsigned CodePointerSize

Code pointer size in bytes. Default is 4.

unsigned CalleeSaveStackSlotSize

Size of the stack slot reserved for callee-saved registers, in bytes.

StringRef CommentString

This indicates the comment string used by the assembler.

Context object for machine code objects.

Base class for the full range of assembler expressions which are needed for parsing.

LLVM_ABI bool evaluateAsRelocatable(MCValue &Res, const MCAssembler *Asm) const

Try to evaluate the expression to a relocatable value, i.e.

LLVM_ABI bool evaluateAsAbsolute(int64_t &Res) const

Try to evaluate the expression to an absolute value.

Extension point for target-specific MCExpr subclasses with a relocation specifier,...

const MCExpr * getSubExpr() const

static const MCSpecifierExpr * create(const MCExpr *Expr, Spec S, MCContext &Ctx, SMLoc Loc=SMLoc())

Spec getSpecifier() const

void setSpecifier(uint32_t S)

const MCSymbol * getSubSym() const

static MipsABIInfo computeTargetABI(const Triple &TT, StringRef ABIName)

bool evaluateAsRelocatableImpl(const MCSpecifierExpr &Expr, MCValue &Res, const MCAssembler *Asm) const override

Definition MipsMCAsmInfo.cpp:221

MipsCOFFMCAsmInfo()

Definition MipsMCAsmInfo.cpp:54

void printSpecifierExpr(raw_ostream &OS, const MCSpecifierExpr &Expr) const override

Definition MipsMCAsmInfo.cpp:216

void printSpecifierExpr(raw_ostream &OS, const MCSpecifierExpr &Expr) const override

Definition MipsMCAsmInfo.cpp:205

MipsELFMCAsmInfo(const Triple &TheTriple, const MCTargetOptions &Options)

Definition MipsMCAsmInfo.cpp:23

bool evaluateAsRelocatableImpl(const MCSpecifierExpr &Expr, MCValue &Res, const MCAssembler *Asm) const override

Definition MipsMCAsmInfo.cpp:210

Triple - Helper class for working with autoconf configuration names.

LLVM_ABI bool isLittleEndian() const

Tests whether the target triple is little endian.

bool isMIPS64() const

Tests whether the target is MIPS 64-bit (little and big endian).

This class implements an extremely fast bulk output stream that can only output to a stream.

#define llvm_unreachable(msg)

Marks that the current location is not supposed to be reachable.

bool isGpOff(const MCSpecifierExpr &E)

Definition MipsMCAsmInfo.cpp:168

const MCSpecifierExpr * createGpOff(const MCExpr *Expr, Specifier S, MCContext &Ctx)

Definition MipsMCAsmInfo.cpp:65

@ Itanium

Windows CE ARM, PowerPC, SH3, SH4.

This is an optimization pass for GlobalISel generic memory operations.

decltype(auto) dyn_cast(const From &Val)

dyn_cast - Return the argument parameter cast to the specified type.

@ DwarfCFI

DWARF-like instruction based exceptions.

@ WinEH

Windows Exception Handling.

decltype(auto) cast(const From &Val)

cast - Return the argument parameter cast to the specified type.