Example #1
0
 bool read() {
     if (!reader_.more())
         return false;
     offset_ = reader_.readUnsigned();
     extOffset_ = reader_.readUnsigned();
     return true;
 }
Example #2
0
RResumePoint::RResumePoint(CompactBufferReader &reader)
{
    pcOffset_ = reader.readUnsigned();
    numOperands_ = reader.readUnsigned();
    JitSpew(JitSpew_IonSnapshots, "Read RResumePoint (pc offset %u, nslots %u)",
            pcOffset_, numOperands_);
}
static void
TraceDataRelocations(JSTracer *trc, uint8 *buffer, CompactBufferReader &reader)
{
    while (reader.more()) {
        size_t offset = reader.readUnsigned();
        void **ptr = JSC::X86Assembler::getPointerRef(buffer + offset);

        // No barrier needed since these are constants.
        gc::MarkThingOrValueUnbarriered(trc, reinterpret_cast<uintptr_t *>(ptr), "imm-gc-word");
    }
}
Example #4
0
void
RInstruction::readRecoverData(CompactBufferReader &reader, RInstructionStorage *raw)
{
    uint32_t op = reader.readUnsigned();
    switch (Opcode(op)) {
#   define MATCH_OPCODES_(op)                                           \
      case Recover_##op:                                                \
        static_assert(sizeof(R##op) <= sizeof(RInstructionStorage),     \
                      "Storage space is too small to decode R" #op " instructions."); \
        new (raw->addr()) R##op(reader);                                \
        break;

        RECOVER_OPCODE_LIST(MATCH_OPCODES_)
#   undef MATCH_OPCODES_

      case Recover_Invalid:
      default:
        MOZ_CRASH("Bad decoding of the previous instruction?");
    }
}
Example #5
0
RArrayState::RArrayState(CompactBufferReader &reader)
{
    numElements_ = reader.readUnsigned();
}
Example #6
0
RObjectState::RObjectState(CompactBufferReader &reader)
{
    numSlots_ = reader.readUnsigned();
}
Example #7
0
RNewArray::RNewArray(CompactBufferReader &reader)
{
    count_ = reader.readUnsigned();
    allocatingBehaviour_ = AllocatingBehaviour(reader.readByte());
}
Example #8
0
RHypot::RHypot(CompactBufferReader& reader)
    : numOperands_(reader.readUnsigned())
{ }
Example #9
0
RNewArray::RNewArray(CompactBufferReader& reader)
{
    count_ = reader.readUnsigned();
}
Example #10
0
RNewArray::RNewArray(CompactBufferReader &reader)
{
    count_ = reader.readUnsigned();
    isAllocating_ = reader.readByte();
}