Example #1
0
void
SnapshotWriter::addSlot(const FloatRegister &reg)
{
    IonSpew(IonSpew_Snapshots, "    slot %u: double (reg %s)", slotsWritten_, reg.name());

    writeSlotHeader(JSVAL_TYPE_DOUBLE, reg.code());
}
Example #2
0
void
SnapshotWriter::addFloat32Slot(const FloatRegister &reg)
{
    JS_ASSERT(reg.code() < MIN_REG_FIELD_ESC);
    IonSpew(IonSpew_Snapshots, "    slot %u: float32 (reg %s)", slotsWritten_, reg.name());
    writeSlotHeader(JSVAL_TYPE_NULL, ESC_REG_FIELD_FLOAT32_REG);
    writer_.writeUnsigned(reg.code());
}
void VMRegImpl::set_regName() {
  Register reg = ::as_Register(0);
  int i;
  for (i = 0; i < ConcreteRegisterImpl::max_gpr ; ) {
    regName[i++  ] = reg->name();
    regName[i++  ] = reg->name();
    reg = reg->successor();
  }

  FloatRegister freg = ::as_FloatRegister(0);
  for ( ; i < ConcreteRegisterImpl::max_fpr ; ) {
    regName[i++] = freg->name();
    if (freg->encoding() > 31) {
      regName[i++] = freg->name();
    }
    freg = freg->successor();
  }

  for ( ; i < ConcreteRegisterImpl::number_of_registers ; i ++ ) {
    regName[i] = "NON-GPR-FPR";
  }
}
void SharedInfo::set_regName() {
  Register reg = GR0;
  for (uint i = 0;
       i < RegisterImpl::number_of_registers;
       ++i, reg = reg->successor()) {
    regName[i] = reg->name();
  }

#ifdef COMPILER1
  uint fbase = RegisterImpl::number_of_registers;
  FloatRegister freg = FR0;
  for (uint i = 0;
       i < FloatRegisterImpl::number_of_registers;
       ++i, freg = freg->successor()) {
    regName[fbase+i] = freg->name();
  }

  uint pbase = RegisterImpl::number_of_registers +
               FloatRegisterImpl::number_of_registers;
  PredicateRegister preg = PR0;
  for (uint i = 0;
       i < PredicateRegisterImpl::number_of_registers;
       ++i, preg = preg->successor()) {
    regName[pbase+i] = preg->name();
  }

  uint bbase = RegisterImpl::number_of_registers +
               FloatRegisterImpl::number_of_registers +
               PredicateRegisterImpl::number_of_registers;
  BranchRegister breg = BR0;
  for (uint i = 0;
       i < BranchRegisterImpl::number_of_registers;
       ++i, breg = breg->successor()) {
    regName[bbase+i] = breg->name();
  }

  uint abase = RegisterImpl::number_of_registers +
               FloatRegisterImpl::number_of_registers +
               PredicateRegisterImpl::number_of_registers +
               BranchRegisterImpl::number_of_registers;
  ApplicationRegister areg = AR0;
  for (uint i = 0;
       i < ApplicationRegisterImpl::number_of_registers;
       ++i, areg = areg->successor()) {
    regName[abase+i] = areg->name();
  }
#endif
}