зеркало из https://github.com/github/ruby.git
MicroJIT: switch to example that passes ec as second argument
opt_send_without_block needs it. Ideally we would use this example only when an instruction in the compiled sequence needs `ec`. We can worry about that later.
This commit is contained in:
Родитель
1ef2887bc1
Коммит
6ca360aa47
|
@ -145,8 +145,8 @@ x86opnd_t ctx_stack_opnd(ctx_t* ctx, int32_t idx)
|
||||||
static void
|
static void
|
||||||
ujit_gen_entry(codeblock_t* cb)
|
ujit_gen_entry(codeblock_t* cb)
|
||||||
{
|
{
|
||||||
for (size_t i = 0; i < sizeof(ujit_pre_call_bytes); ++i)
|
for (size_t i = 0; i < sizeof(ujit_pre_call_with_ec_bytes); ++i)
|
||||||
cb_write_byte(cb, ujit_pre_call_bytes[i]);
|
cb_write_byte(cb, ujit_pre_call_with_ec_bytes[i]);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -170,8 +170,8 @@ ujit_gen_exit(codeblock_t* cb, ctx_t* ctx, VALUE* exit_pc)
|
||||||
mov(cb, mem_opnd(64, RDI, 0), RAX);
|
mov(cb, mem_opnd(64, RDI, 0), RAX);
|
||||||
|
|
||||||
// Write the post call bytes
|
// Write the post call bytes
|
||||||
for (size_t i = 0; i < sizeof(ujit_post_call_bytes); ++i)
|
for (size_t i = 0; i < sizeof(ujit_post_call_with_ec_bytes); ++i)
|
||||||
cb_write_byte(cb, ujit_post_call_bytes[i]);
|
cb_write_byte(cb, ujit_post_call_with_ec_bytes[i]);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Загрузка…
Ссылка в новой задаче