Lines Matching refs:literal
3 * Consider the literal pool simply as a container of literals
4 * Keep the literal pool at the macro-assembler level
5 * The literal pool is public (can be used by the users)
6 * The macro-assembler will have its own literal pool, and will manage
8 * The macro-assembler is responsible for emitting its managed literal
10 * The assembler does not manage literals, but can place a literal in the
21 specify the maximum range the literal has to be placed.
29 When a literal is added to the literal pool, it’s appended to the list of
31 When an instruction using a literal is emitted, the literal's checkpoint
36 literal pool is emitted. The emission will include an optional branch to let the
46 We will emit the literal pool when one of the following conditions is met:
49 via the macro-assembler because the assembler has no knowledge of the literal
51 2. A literal is added, and the instruction range does not allow the
60 At the application level, one can use a literal pool, but such pool will
65 literal pool will be fully managed by the macro-assembler, and
67 We believe it’s too complex for vixl to manage multiple literal pools
69 that’s negotiable. For example, we could have one literal pool for small
75 What still needs to be done with this version of the literal pools:
76 • Have a notion of shared literal so that the literal can be reused
77 even when the literal has been emitted
79 In the current implementation for AArch64 the literal pool is associated to a
80 macro-assembler, the literal may be associated to a literal pool, and the
81 assembler places the literal. If the literal is linked to literal pool, the
87 1488 literal = new Literal<uint64_t>(imm,
91 1498 ldr(rt, literal);
93 vixl::aarch64::Assembler::ldr (this, rt=..., literal)
94 1693 ldr(rt, static_cast<int>(LinkAndGetWordOffsetTo(literal)));
96 vixl::aarch64::Assembler::LinkAndGetWordOffsetTo (this=0x7fffffffd550, literal)
97 637 literal->SetLastUse(GetCursorOffset());
102 vixl::aarch64::Assembler::LinkAndGetWordOffsetTo (this, literal)
103 640 literal->GetLiteralPool()->AddEntry(literal);
120 vixl::aarch64::LiteralPool::AddEntry (this=0x7fffffffd598, literal=0x28d7f40)
121 131 entries_.push_back(literal);
122 132 size_ += literal->GetSize();