Lines Matching defs:literal

111 void Assembler::place(RawLiteral* literal) {
112 VIXL_ASSERT(!literal->IsPlaced());
114 // Patch instructions using this literal.
115 if (literal->IsUsed()) {
117 ptrdiff_t offset = literal->GetLastUse();
132 // "bind" the literal.
133 literal->SetOffset(GetCursorOffset());
135 switch (literal->GetSize()) {
137 dc32(literal->GetRawValue32());
140 dc64(literal->GetRawValue64());
143 VIXL_ASSERT(literal->GetSize() == kQRegSizeInBytes);
144 dc64(literal->GetRawValue128Low64());
145 dc64(literal->GetRawValue128High64());
148 literal->literal_pool_ = NULL;
152 ptrdiff_t Assembler::LinkAndGetWordOffsetTo(RawLiteral* literal) {
156 (literal->GetLiteralPool() != NULL) && !literal->IsUsed();
158 if (literal->IsPlaced()) {
159 // The literal is "behind", the offset will be negative.
160 VIXL_ASSERT((literal->GetOffset() - GetCursorOffset()) <= 0);
161 return (literal->GetOffset() - GetCursorOffset()) >> kLiteralEntrySizeLog2;
166 if (literal->IsUsed()) {
168 (literal->GetLastUse() - GetCursorOffset()) >> kLiteralEntrySizeLog2;
170 literal->SetLastUse(GetCursorOffset());
173 literal->GetLiteralPool()->AddEntry(literal);
1365 void Assembler::ldrsw(const Register& xt, RawLiteral* literal) {
1367 VIXL_ASSERT(literal->GetSize() == kWRegSizeInBytes);
1368 ldrsw(xt, static_cast<int>(LinkAndGetWordOffsetTo(literal)));
1372 void Assembler::ldr(const CPURegister& rt, RawLiteral* literal) {
1374 VIXL_ASSERT(literal->GetSize() == static_cast<size_t>(rt.GetSizeInBytes()));
1375 ldr(rt, static_cast<int>(LinkAndGetWordOffsetTo(literal)));
1898 void Assembler::prfm(int op, RawLiteral* literal) {
1899 prfm(op, static_cast<int>(LinkAndGetWordOffsetTo(literal)));
1902 void Assembler::prfm(PrefetchOperation op, RawLiteral* literal) {
1905 prfm(static_cast<int>(op), literal);