pike.git/
src/
code/
amd64.c
Branch:
Tag:
Non-build tags
All tags
No tags
2014-08-18
2014-08-18 13:12:34 by Per Hedbor <ph@opera.com>
a92d4532c1fbbe8d95ea6badc25204eae6de4e1a (
15
lines) (+
11
/-
4
)
[
Show
|
Annotate
]
Branch:
8.0
Fixed a few missing debug prologues.
2995:
} /* Get function pointer */
+
ins_debug_instr_prologue(a-F_OFFSET, b, 0);
amd64_call_c_opcode(Pike_compiler->new_program->constants[b].sval.u.efun->function, I_UPDATE_SP); return;
3158:
case F_CLEAR_N_LOCAL: { LABELS();
-
ins_debug_instr_prologue(a-F_OFFSET, b,
0
);
+
ins_debug_instr_prologue(a-F_OFFSET, b,
c
);
amd64_load_fp_reg(); mov_mem_reg(fp_reg, OFFSETOF(pike_frame, locals), P_REG_RBX); add_reg_imm(P_REG_RBX, b*sizeof(struct svalue));
3298:
LABEL_B; } return;
+
case F_ASSIGN_PRIVATE_TYPED_GLOBAL_AND_POP: case F_ASSIGN_PRIVATE_TYPED_GLOBAL: { LABELS(); amd64_load_sp_reg();
-
ins_debug_instr_prologue(a-F_OFFSET, b,
0
);
+
ins_debug_instr_prologue(a-F_OFFSET, b,
c
);
amd64_get_storage( P_REG_RBX, b );
3418:
case F_ADD_LOCAL_INT_AND_POP: { LABELS();
-
ins_debug_instr_prologue(a-F_OFFSET, b,
0
);
+
ins_debug_instr_prologue(a-F_OFFSET, b,
c
);
amd64_load_fp_reg(); mov_mem_reg( fp_reg, OFFSETOF(pike_frame, locals), ARG1_REG); add_reg_imm( ARG1_REG, b*sizeof(struct svalue) );
3458:
Inside #if 0
#if 0 /* this is a: nonworking, and b: not really all that more efficient anyway.. */ case F_APPLY_N:
+
ins_debug_instr_prologue(a-F_OFFSET, b, c);
mov_imm_reg( APPLY_SVALUE_STRICT, ARG1_REG ); mov_imm_reg( c, ARG2_REG ); mov_ptr_reg( &((Pike_fp->context->prog->constants + b)->sval), ARG3_REG );
3466:
return; #endif case F_CALL_BUILTIN_N:
+
ins_debug_instr_prologue(a-F_OFFSET, b, c);
mov_imm_reg( c, ARG1_REG ); amd64_call_c_opcode(Pike_compiler->new_program->constants[b].sval.u.efun->function, I_UPDATE_SP);
3533:
case F_LEXICAL_LOCAL: if( c < 5 ) {
+
ins_debug_instr_prologue(a-F_OFFSET, b, c);
amd64_load_fp_reg(); mov_reg_reg( fp_reg, P_REG_RAX ); while(c--)
3548:
case F_LEXICAL_LOCAL_LVALUE: if( c < 5 ) {
+
ins_debug_instr_prologue(a-F_OFFSET, b, c);
amd64_load_fp_reg(); amd64_load_sp_reg(); mov_reg_reg( fp_reg, P_REG_RAX );