Fix codegen timing flush at end of a block.
This commit is contained in:
parent
52f5f43d82
commit
b35cf7de09
2 changed files with 5 additions and 0 deletions
|
|
@ -793,6 +793,7 @@ void codegen_block_end()
|
||||||
void codegen_block_end_recompile(codeblock_t *block)
|
void codegen_block_end_recompile(codeblock_t *block)
|
||||||
{
|
{
|
||||||
codegen_timing_block_end();
|
codegen_timing_block_end();
|
||||||
|
codegen_accumulate(ACCREG_cycles, -codegen_block_cycles);
|
||||||
|
|
||||||
if (block->flags & CODEBLOCK_IN_DIRTY_LIST)
|
if (block->flags & CODEBLOCK_IN_DIRTY_LIST)
|
||||||
block_dirty_list_remove(block);
|
block_dirty_list_remove(block);
|
||||||
|
|
|
||||||
|
|
@ -2339,7 +2339,11 @@ void codegen_timing_k6_opcode(uint8_t opcode, uint32_t fetchdat, int op_32, uint
|
||||||
void codegen_timing_k6_block_end()
|
void codegen_timing_k6_block_end()
|
||||||
{
|
{
|
||||||
if (decode_buffer.nr_uops)
|
if (decode_buffer.nr_uops)
|
||||||
|
{
|
||||||
|
int old_last_complete_timestamp = last_complete_timestamp;
|
||||||
decode_flush();
|
decode_flush();
|
||||||
|
codegen_block_cycles += (last_complete_timestamp - old_last_complete_timestamp);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
int codegen_timing_k6_jump_cycles()
|
int codegen_timing_k6_jump_cycles()
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue