Project

General

Profile

Bug #15986 » mjit_debug.diff

k0kubun (Takashi Kokubun), 07/12/2019 01:07 PM

View differences:

mjit_worker.c
so_file = alloca(c_file_len - sizeof(c_ext) + sizeof(so_ext));
memcpy(so_file, c_file, c_file_len - sizeof(c_ext));
memcpy(&so_file[c_file_len - sizeof(c_ext)], so_ext, sizeof(so_ext));
verbose(2, "DEBUG: c_file_len:%d\n", c_file_len);
verbose(2, "DEBUG: sizeof(c_ext):%zu\n", sizeof(c_ext));
verbose(2, "DEBUG: sizeof(o_ext):%zu\n", sizeof(o_ext));
verbose(2, "DEBUG: sizeof(so_ext):%zu\n", sizeof(so_ext));
verbose(2, "DEBUG: c_ext:`%s`\n", c_ext);
verbose(2, "DEBUG: so_ext:`%s`\n", so_ext);
verbose(2, "DEBUG: c_file:`%s`\n", c_file);
verbose(2, "DEBUG: o_file:`%s`\n", o_file);
verbose(2, "DEBUG: so_file:`%s`\n", so_file);
verbose(2, "DEBUG: so_file ptr:%p\n", (void *)so_file);
sprintf(funcname, "_mjit%d", unit->id);
test/ruby/test_jit.rb
# Shorthand for normal test cases
def assert_eval_with_jit(script, stdout: nil, success_count:, min_calls: 1, insns: [], uplevel: 3)
out, err = eval_with_jit(script, verbose: 1, min_calls: min_calls)
out, err = eval_with_jit(script, verbose: 2, min_calls: min_calls)
actual = err.scan(/^#{JIT_SUCCESS_PREFIX}:/).size
# Add --jit-verbose=2 logs for cl.exe because compiler's error message is suppressed
# for cl.exe with --jit-verbose=1. See `start_process` in mjit_worker.c.
(4-4/11)