- jit_int32_t offset, regno, spec;
- for (offset = 0; offset < JIT_R_NUM; offset++) {
- regno = JIT_R(offset);
- spec = _rvs[regno].spec;
- if ((spec & jit_class_gpr) && regno == r0)
- continue;
- if (!(spec & jit_class_sav)) {
- if (!_jitc->function->regoff[regno]) {
- _jitc->function->regoff[regno] =
- jit_allocai(sizeof(jit_word_t));
- _jitc->again = 1;
- }
- jit_regset_setbit(&_jitc->regsav, regno);
- emit_stxi(_jitc->function->regoff[regno], JIT_FP, regno);
- }
- }
- /* If knew for certain float registers are not used by
- * pthread_mutex_lock and pthread_mutex_unlock, could skip this */
- for (offset = 0; offset < JIT_F_NUM; offset++) {
- regno = JIT_F(offset);
+ jit_int32_t regno, spec;
+ for (regno = 0; regno < _jitc->reglen; regno++) {