s/cpu2/cpu
This commit is contained in:
parent
b97c5661f5
commit
56272ca397
|
@ -408,11 +408,11 @@ function gen_table()
|
|||
const code = [
|
||||
"#![cfg_attr(rustfmt, rustfmt_skip)]",
|
||||
|
||||
"use cpu2::cpu::{after_block_boundary, modrm_resolve};",
|
||||
"use cpu2::cpu::{read_imm8, read_imm8s, read_imm16, read_imm32s, read_moffs};",
|
||||
"use cpu2::cpu::{task_switch_test, trigger_ud, DEBUG, PREFIX_F2, PREFIX_F3};",
|
||||
"use cpu2::instructions;",
|
||||
"use cpu2::global_pointers::{instruction_pointer, prefixes};",
|
||||
"use cpu::cpu::{after_block_boundary, modrm_resolve};",
|
||||
"use cpu::cpu::{read_imm8, read_imm8s, read_imm16, read_imm32s, read_moffs};",
|
||||
"use cpu::cpu::{task_switch_test, trigger_ud, DEBUG, PREFIX_F2, PREFIX_F3};",
|
||||
"use cpu::instructions;",
|
||||
"use cpu::global_pointers::{instruction_pointer, prefixes};",
|
||||
|
||||
"pub unsafe fn run(opcode: u32) {",
|
||||
table,
|
||||
|
@ -471,12 +471,12 @@ function gen_table()
|
|||
const code = [
|
||||
"#![cfg_attr(rustfmt, rustfmt_skip)]",
|
||||
|
||||
"use cpu2::cpu::{after_block_boundary, modrm_resolve};",
|
||||
"use cpu2::cpu::{read_imm8, read_imm16, read_imm32s};",
|
||||
"use cpu2::cpu::{task_switch_test, task_switch_test_mmx, trigger_ud};",
|
||||
"use cpu2::cpu::{DEBUG, PREFIX_66, PREFIX_F2, PREFIX_F3};",
|
||||
"use cpu2::instructions_0f;",
|
||||
"use cpu2::global_pointers::{instruction_pointer, prefixes};",
|
||||
"use cpu::cpu::{after_block_boundary, modrm_resolve};",
|
||||
"use cpu::cpu::{read_imm8, read_imm16, read_imm32s};",
|
||||
"use cpu::cpu::{task_switch_test, task_switch_test_mmx, trigger_ud};",
|
||||
"use cpu::cpu::{DEBUG, PREFIX_66, PREFIX_F2, PREFIX_F3};",
|
||||
"use cpu::instructions_0f;",
|
||||
"use cpu::global_pointers::{instruction_pointer, prefixes};",
|
||||
|
||||
"pub unsafe fn run(opcode: u32) {",
|
||||
table0f,
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
use cpu2::cpu::{
|
||||
use cpu::cpu::{
|
||||
FLAG_CARRY, FLAG_OVERFLOW, FLAG_SIGN, FLAG_ZERO, TLB_GLOBAL, TLB_HAS_CODE, TLB_NO_USER,
|
||||
TLB_READONLY, TLB_VALID,
|
||||
};
|
||||
use cpu2::imports::mem8;
|
||||
use cpu2::memory;
|
||||
use cpu::imports::mem8;
|
||||
use cpu::memory;
|
||||
use global_pointers;
|
||||
use jit::JitContext;
|
||||
use modrm;
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
use cpu2::cpu::*;
|
||||
use cpu2::global_pointers::*;
|
||||
use cpu2::memory::{read8, write8};
|
||||
use cpu2::misc_instr::{getaf, getcf, getzf};
|
||||
use cpu::cpu::*;
|
||||
use cpu::global_pointers::*;
|
||||
use cpu::memory::{read8, write8};
|
||||
use cpu::misc_instr::{getaf, getcf, getzf};
|
||||
|
||||
pub fn int_log2(x: i32) -> i32 { 31 - x.leading_zeros() as i32 }
|
||||
|
|
@ -29,19 +29,19 @@ extern "C" {
|
|||
pub fn io_port_write32(port: i32, value: i32);
|
||||
}
|
||||
|
||||
use cpu2::fpu::fpu_set_tag_word;
|
||||
use cpu2::global_pointers::*;
|
||||
pub use cpu2::imports::mem8;
|
||||
use cpu2::memory;
|
||||
use cpu2::memory::{
|
||||
use cpu::fpu::fpu_set_tag_word;
|
||||
use cpu::global_pointers::*;
|
||||
pub use cpu::imports::mem8;
|
||||
use cpu::memory;
|
||||
use cpu::memory::{
|
||||
in_mapped_range, read8, read16, read32s, read64s, read128, read_aligned32, write8,
|
||||
write_aligned32,
|
||||
};
|
||||
use cpu2::misc_instr::{
|
||||
use cpu::misc_instr::{
|
||||
adjust_stack_reg, get_stack_pointer, getaf, getcf, getof, getpf, getsf, getzf, pop16, pop32s,
|
||||
push16, push32,
|
||||
};
|
||||
use cpu2::modrm::{resolve_modrm16, resolve_modrm32};
|
||||
use cpu::modrm::{resolve_modrm16, resolve_modrm32};
|
||||
use page::Page;
|
||||
use paging::OrPageFault;
|
||||
use profiler;
|
||||
|
@ -2359,11 +2359,11 @@ pub unsafe fn cycle_internal() {
|
|||
dbg_assert!(*timestamp_counter != initial_tsc, "TSC didn't change");
|
||||
|
||||
if cfg!(feature = "profiler") && cfg!(feature = "profiler_instrument") {
|
||||
dbg_assert!(match ::cpu2::cpu::debug_last_jump {
|
||||
dbg_assert!(match ::cpu::cpu::debug_last_jump {
|
||||
LastJump::Compiled { .. } => true,
|
||||
_ => false,
|
||||
});
|
||||
let last_jump_addr = ::cpu2::cpu::debug_last_jump.phys_address().unwrap();
|
||||
let last_jump_addr = ::cpu::cpu::debug_last_jump.phys_address().unwrap();
|
||||
let last_jump_opcode = if last_jump_addr != 0 {
|
||||
read32s(last_jump_addr)
|
||||
}
|
|
@ -1,7 +1,7 @@
|
|||
use std::mem::transmute;
|
||||
|
||||
use cpu2::cpu::*;
|
||||
use cpu2::global_pointers::*;
|
||||
use cpu::cpu::*;
|
||||
use cpu::global_pointers::*;
|
||||
use paging::OrPageFault;
|
||||
use std::f64;
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
#![allow(non_upper_case_globals)]
|
||||
|
||||
use cpu2::cpu::reg128;
|
||||
use cpu::cpu::reg128;
|
||||
|
||||
pub const reg8: *mut u8 = 64 as *mut u8;
|
||||
pub const reg16: *mut u16 = 64 as *mut u16;
|
|
@ -1,7 +1,7 @@
|
|||
macro_rules! SAFE_READ_WRITE8 {
|
||||
($value:ident, $addr:expr, $instruction:expr) => {{
|
||||
use cpu2::cpu::translate_address_write_and_can_skip_dirty;
|
||||
use cpu2::memory;
|
||||
use cpu::cpu::translate_address_write_and_can_skip_dirty;
|
||||
use cpu::memory;
|
||||
use page::Page;
|
||||
let (phys_addr, can_skip_dirty_page) =
|
||||
return_on_pagefault!(translate_address_write_and_can_skip_dirty($addr));
|
||||
|
@ -23,10 +23,10 @@ macro_rules! SAFE_READ_WRITE8 {
|
|||
}
|
||||
macro_rules! SAFE_READ_WRITE16 {
|
||||
($value:ident, $addr:expr, $instruction:expr) => {{
|
||||
use cpu2::cpu::{
|
||||
use cpu::cpu::{
|
||||
translate_address_write_and_can_skip_dirty, virt_boundary_read16, virt_boundary_write16,
|
||||
};
|
||||
use cpu2::memory;
|
||||
use cpu::memory;
|
||||
use page::Page;
|
||||
let (phys_addr, can_skip_dirty_page) =
|
||||
return_on_pagefault!(translate_address_write_and_can_skip_dirty($addr));
|
||||
|
@ -55,11 +55,11 @@ macro_rules! SAFE_READ_WRITE16 {
|
|||
}
|
||||
macro_rules! SAFE_READ_WRITE32 {
|
||||
($value:ident, $addr:expr, $instruction:expr) => {{
|
||||
use cpu2::cpu::{
|
||||
use cpu::cpu::{
|
||||
translate_address_write_and_can_skip_dirty, virt_boundary_read32s,
|
||||
virt_boundary_write32,
|
||||
};
|
||||
use cpu2::memory;
|
||||
use cpu::memory;
|
||||
use page::Page;
|
||||
let (phys_addr, can_skip_dirty_page) =
|
||||
return_on_pagefault!(translate_address_write_and_can_skip_dirty($addr));
|
|
@ -5,14 +5,14 @@ extern "C" {
|
|||
fn hlt_op();
|
||||
}
|
||||
|
||||
use cpu2::arith::*;
|
||||
use cpu2::cpu::*;
|
||||
use cpu2::fpu::*;
|
||||
use cpu2::fpu::{fpu_load_m32, fpu_load_m64, fpu_write_st};
|
||||
use cpu2::global_pointers::*;
|
||||
use cpu2::misc_instr::*;
|
||||
use cpu2::misc_instr::{pop16, pop32s, push16, push32};
|
||||
use cpu2::string::*;
|
||||
use cpu::arith::*;
|
||||
use cpu::cpu::*;
|
||||
use cpu::fpu::*;
|
||||
use cpu::fpu::{fpu_load_m32, fpu_load_m64, fpu_write_st};
|
||||
use cpu::global_pointers::*;
|
||||
use cpu::misc_instr::*;
|
||||
use cpu::misc_instr::{pop16, pop32s, push16, push32};
|
||||
use cpu::string::*;
|
||||
|
||||
pub unsafe fn instr_00_mem(addr: i32, r: i32) {
|
||||
SAFE_READ_WRITE8!(___, addr, add8(___, read_reg8(r)));
|
|
@ -28,26 +28,26 @@ unsafe fn unimplemented_sse() {
|
|||
trigger_ud()
|
||||
}
|
||||
|
||||
use cpu2::arith::{
|
||||
use cpu::arith::{
|
||||
bsf16, bsf32, bsr16, bsr32, bt_mem, bt_reg, btc_mem, btc_reg, btr_mem, btr_reg, bts_mem,
|
||||
bts_reg, cmpxchg8, cmpxchg16, cmpxchg32, popcnt, shld16, shld32, shrd16, shrd32, xadd8, xadd16,
|
||||
xadd32,
|
||||
};
|
||||
use cpu2::arith::{
|
||||
use cpu::arith::{
|
||||
imul_reg16, imul_reg32, saturate_sd_to_sb, saturate_sd_to_sw, saturate_sd_to_ub,
|
||||
saturate_sw_to_sb, saturate_sw_to_ub, saturate_ud_to_ub, saturate_uw,
|
||||
};
|
||||
use cpu2::cpu::*;
|
||||
use cpu2::fpu::fpu_load_m32;
|
||||
use cpu2::fpu::fpu_set_tag_word;
|
||||
use cpu2::global_pointers::*;
|
||||
use cpu2::misc_instr::{
|
||||
use cpu::cpu::*;
|
||||
use cpu::fpu::fpu_load_m32;
|
||||
use cpu::fpu::fpu_set_tag_word;
|
||||
use cpu::global_pointers::*;
|
||||
use cpu::misc_instr::{
|
||||
adjust_stack_reg, bswap, cmovcc16, cmovcc32, fxrstor, fxsave, get_stack_pointer, jmpcc16,
|
||||
jmpcc32, push16, push32, setcc_mem, setcc_reg, test_b, test_be, test_l, test_le, test_o,
|
||||
test_p, test_s, test_z,
|
||||
};
|
||||
use cpu2::misc_instr::{lss16, lss32};
|
||||
use cpu2::sse_instr::*;
|
||||
use cpu::misc_instr::{lss16, lss32};
|
||||
use cpu::sse_instr::*;
|
||||
|
||||
#[no_mangle]
|
||||
pub unsafe fn instr16_0F00_0_mem(addr: i32) {
|
|
@ -18,8 +18,8 @@ extern "C" {
|
|||
pub fn mmap_write128(addr: u32, v0: i32, v1: i32, v2: i32, v3: i32);
|
||||
}
|
||||
|
||||
use cpu2::cpu::{mem8, reg128};
|
||||
use cpu2::global_pointers::memory_size;
|
||||
use cpu::cpu::{mem8, reg128};
|
||||
use cpu::global_pointers::memory_size;
|
||||
use page::Page;
|
||||
use std::ptr;
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
use cpu2::cpu::*;
|
||||
use cpu2::fpu::{fpu_load_m80, fpu_load_status_word, fpu_set_status_word, fpu_store_m80};
|
||||
use cpu2::global_pointers::*;
|
||||
use cpu::cpu::*;
|
||||
use cpu::fpu::{fpu_load_m80, fpu_load_status_word, fpu_set_status_word, fpu_store_m80};
|
||||
use cpu::global_pointers::*;
|
||||
use paging::OrPageFault;
|
||||
|
||||
pub unsafe fn getcf() -> bool {
|
|
@ -1,4 +1,4 @@
|
|||
use cpu2::cpu::*;
|
||||
use cpu::cpu::*;
|
||||
use paging::OrPageFault;
|
||||
|
||||
pub unsafe fn resolve_modrm16(modrm_byte: i32) -> OrPageFault<i32> {
|
|
@ -1,5 +1,5 @@
|
|||
use cpu2::cpu::*;
|
||||
use cpu2::global_pointers::mxcsr;
|
||||
use cpu::cpu::*;
|
||||
use cpu::global_pointers::mxcsr;
|
||||
|
||||
#[no_mangle]
|
||||
pub unsafe fn mov_r_m64(addr: i32, r: i32) {
|
|
@ -9,16 +9,16 @@
|
|||
// ins 0 0 1/w
|
||||
// outs 0 1 0
|
||||
|
||||
use cpu2::arith::{cmp8, cmp16, cmp32};
|
||||
use cpu2::cpu::{
|
||||
use cpu::arith::{cmp8, cmp16, cmp32};
|
||||
use cpu::cpu::{
|
||||
get_seg, io_port_read8, io_port_read16, io_port_read32, io_port_write8, io_port_write16,
|
||||
io_port_write32, read_reg16, read_reg32, safe_read8, safe_read16, safe_read32s, safe_write8,
|
||||
safe_write16, safe_write32, set_reg_asize, test_privileges_for_io, translate_address_read,
|
||||
translate_address_write_and_can_skip_dirty, writable_or_pagefault, write_reg8, write_reg16,
|
||||
write_reg32, AL, AX, DX, EAX, ECX, EDI, ES, ESI, FLAG_DIRECTION,
|
||||
};
|
||||
use cpu2::global_pointers::{flags, instruction_pointer, previous_ip};
|
||||
use cpu2::memory::{
|
||||
use cpu::global_pointers::{flags, instruction_pointer, previous_ip};
|
||||
use cpu::memory::{
|
||||
in_mapped_range, memcpy_no_mmap_or_dirty_check, memset_no_mmap_or_dirty_check,
|
||||
read8_no_mmap_check, read16_no_mmap_check, read32_no_mmap_check, write8_no_mmap_or_dirty_check,
|
||||
write16_no_mmap_or_dirty_check, write32_no_mmap_or_dirty_check,
|
|
@ -1,4 +1,4 @@
|
|||
use cpu2::memory;
|
||||
use cpu::memory;
|
||||
use prefix::{PREFIX_MASK_ADDRSIZE, PREFIX_MASK_OPSIZE};
|
||||
use state_flags::CachedStateFlags;
|
||||
|
||||
|
|
|
@ -5,9 +5,8 @@ use std::ptr::NonNull;
|
|||
|
||||
use analysis::AnalysisType;
|
||||
use codegen;
|
||||
use cpu2;
|
||||
use cpu2::cpu;
|
||||
use cpu2::memory;
|
||||
use cpu::cpu;
|
||||
use cpu::memory;
|
||||
use cpu_context::CpuContext;
|
||||
use global_pointers;
|
||||
use jit_instructions;
|
||||
|
@ -556,7 +555,7 @@ pub fn record_entry_point(phys_address: u32) {
|
|||
.insert(offset_in_page);
|
||||
|
||||
if is_new {
|
||||
cpu2::cpu::tlb_set_has_code(page, true);
|
||||
cpu::tlb_set_has_code(page, true);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1026,10 +1025,10 @@ fn jit_analyze_and_generate(
|
|||
|
||||
dbg_assert!(entry_point_count > 0);
|
||||
|
||||
cpu2::cpu::tlb_set_has_code(page, true);
|
||||
cpu::tlb_set_has_code(page, true);
|
||||
|
||||
jit_cache_array::check_invariants();
|
||||
cpu2::cpu::check_tlb_invariants();
|
||||
cpu::check_tlb_invariants();
|
||||
|
||||
let end_addr = 0;
|
||||
let first_opcode = 0;
|
||||
|
@ -1496,7 +1495,7 @@ fn remove_jit_cache_wasm_index(ctx: &mut JitState, page: Page, wasm_table_index:
|
|||
}
|
||||
|
||||
if !jit_page_has_code(page) {
|
||||
cpu2::cpu::tlb_set_has_code(page, false);
|
||||
cpu::tlb_set_has_code(page, false);
|
||||
}
|
||||
|
||||
if CHECK_JIT_CACHE_ARRAY_INVARIANTS {
|
||||
|
@ -1580,7 +1579,7 @@ pub fn jit_dirty_page(ctx: &mut JitState, page: Page) {
|
|||
}
|
||||
|
||||
if did_have_code {
|
||||
cpu2::cpu::tlb_set_has_code(page, false);
|
||||
cpu::tlb_set_has_code(page, false);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1718,9 +1717,8 @@ pub fn check_missed_entry_points(phys_address: u32, state_flags: CachedStateFlag
|
|||
{
|
||||
profiler::stat_increment(stat::RUN_INTERPRETED_MISSED_COMPILED_ENTRY_LOOKUP);
|
||||
|
||||
let last_jump_type = unsafe { ::cpu2::cpu::debug_last_jump.name() };
|
||||
let last_jump_addr =
|
||||
unsafe { ::cpu2::cpu::debug_last_jump.phys_address() }.unwrap_or(0);
|
||||
let last_jump_type = unsafe { cpu::debug_last_jump.name() };
|
||||
let last_jump_addr = unsafe { cpu::debug_last_jump.phys_address() }.unwrap_or(0);
|
||||
let last_jump_opcode =
|
||||
if last_jump_addr != 0 { memory::read32s(last_jump_addr) } else { 0 };
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
use codegen;
|
||||
use codegen::BitSize;
|
||||
use cpu2::cpu::{
|
||||
use cpu::cpu::{
|
||||
FLAGS_ALL, FLAGS_DEFAULT, FLAGS_MASK, FLAG_ADJUST, FLAG_CARRY, FLAG_DIRECTION, FLAG_INTERRUPT,
|
||||
FLAG_OVERFLOW, FLAG_SUB, OPSIZE_8, OPSIZE_16, OPSIZE_32,
|
||||
};
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
use cpu2::cpu::{
|
||||
use cpu::cpu::{
|
||||
safe_read16, safe_read32s, safe_write16, safe_write32, translate_address_system_read,
|
||||
translate_address_system_write, writable_or_pagefault,
|
||||
};
|
||||
use cpu2::misc_instr::{push16, push32};
|
||||
use cpu::misc_instr::{push16, push32};
|
||||
|
||||
#[no_mangle]
|
||||
pub unsafe fn safe_read16_js(addr: i32) -> i32 { safe_read16(addr).unwrap() }
|
||||
|
|
|
@ -12,7 +12,7 @@ mod dbg;
|
|||
#[macro_use]
|
||||
mod paging;
|
||||
|
||||
pub mod cpu2;
|
||||
pub mod cpu;
|
||||
|
||||
pub mod js_api;
|
||||
pub mod profiler;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
use cpu2;
|
||||
use cpu;
|
||||
use global_pointers;
|
||||
use wasmgen::wasm_builder::WasmBuilder;
|
||||
|
||||
|
@ -154,7 +154,7 @@ pub fn record_opstat_compiled(opcode: u32) {
|
|||
|
||||
for prefix in instruction.prefixes {
|
||||
let index = (prefix as u32) << 4;
|
||||
unsafe { *cpu2::global_pointers::opstats_compiled_buffer.offset(index as isize) += 1 }
|
||||
unsafe { *cpu::global_pointers::opstats_compiled_buffer.offset(index as isize) += 1 }
|
||||
}
|
||||
|
||||
let index = (instruction.is_0f as u32) << 12
|
||||
|
@ -162,7 +162,7 @@ pub fn record_opstat_compiled(opcode: u32) {
|
|||
| (instruction.is_mem as u32) << 3
|
||||
| instruction.fixed_g as u32;
|
||||
|
||||
unsafe { *cpu2::global_pointers::opstats_compiled_buffer.offset(index as isize) += 1 }
|
||||
unsafe { *cpu::global_pointers::opstats_compiled_buffer.offset(index as isize) += 1 }
|
||||
}
|
||||
|
||||
pub fn record_opstat_jit_exit(opcode: u32) {
|
||||
|
@ -174,7 +174,7 @@ pub fn record_opstat_jit_exit(opcode: u32) {
|
|||
|
||||
for prefix in instruction.prefixes {
|
||||
let index = (prefix as u32) << 4;
|
||||
unsafe { *cpu2::global_pointers::opstats_jit_exit_buffer.offset(index as isize) += 1 }
|
||||
unsafe { *cpu::global_pointers::opstats_jit_exit_buffer.offset(index as isize) += 1 }
|
||||
}
|
||||
|
||||
let index = (instruction.is_0f as u32) << 12
|
||||
|
@ -182,7 +182,7 @@ pub fn record_opstat_jit_exit(opcode: u32) {
|
|||
| (instruction.is_mem as u32) << 3
|
||||
| instruction.fixed_g as u32;
|
||||
|
||||
unsafe { *cpu2::global_pointers::opstats_jit_exit_buffer.offset(index as isize) += 1 }
|
||||
unsafe { *cpu::global_pointers::opstats_jit_exit_buffer.offset(index as isize) += 1 }
|
||||
}
|
||||
|
||||
pub fn record_opstat_unguarded_register(opcode: u32) {
|
||||
|
@ -195,7 +195,7 @@ pub fn record_opstat_unguarded_register(opcode: u32) {
|
|||
for prefix in instruction.prefixes {
|
||||
let index = (prefix as u32) << 4;
|
||||
unsafe {
|
||||
*cpu2::global_pointers::opstats_unguarded_register_buffer.offset(index as isize) += 1
|
||||
*cpu::global_pointers::opstats_unguarded_register_buffer.offset(index as isize) += 1
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -204,7 +204,7 @@ pub fn record_opstat_unguarded_register(opcode: u32) {
|
|||
| (instruction.is_mem as u32) << 3
|
||||
| instruction.fixed_g as u32;
|
||||
|
||||
unsafe { *cpu2::global_pointers::opstats_unguarded_register_buffer.offset(index as isize) += 1 }
|
||||
unsafe { *cpu::global_pointers::opstats_unguarded_register_buffer.offset(index as isize) += 1 }
|
||||
}
|
||||
|
||||
pub fn gen_opstat_unguarded_register(builder: &mut WasmBuilder, opcode: u32) {
|
||||
|
@ -242,7 +242,7 @@ pub fn record_opstat_size_wasm(opcode: u32, size: u32) {
|
|||
|
||||
for prefix in instruction.prefixes {
|
||||
let index = (prefix as u32) << 4;
|
||||
unsafe { *cpu2::global_pointers::opstats_wasm_size.offset(index as isize) += size }
|
||||
unsafe { *cpu::global_pointers::opstats_wasm_size.offset(index as isize) += size }
|
||||
}
|
||||
|
||||
let index = (instruction.is_0f as u32) << 12
|
||||
|
@ -250,5 +250,5 @@ pub fn record_opstat_size_wasm(opcode: u32, size: u32) {
|
|||
| (instruction.is_mem as u32) << 3
|
||||
| instruction.fixed_g as u32;
|
||||
|
||||
unsafe { *cpu2::global_pointers::opstats_wasm_size.offset(index as isize) += size }
|
||||
unsafe { *cpu::global_pointers::opstats_wasm_size.offset(index as isize) += size }
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue