wasm-emu: keep only aliased qemu_ld fallback
This commit is contained in:
Vendored
+1
-1
Submodule third_party/qemu updated: c1fc905cf2...598b5e66fd
+1
-28
@@ -463,7 +463,7 @@ async function boot(file, variant, setStatus) {
|
|||||||
const { default: createQemu } = await import(qemuUrl);
|
const { default: createQemu } = await import(qemuUrl);
|
||||||
|
|
||||||
const params = new URL(location.href).searchParams;
|
const params = new URL(location.href).searchParams;
|
||||||
const qemuLogFlags = [params.has('trace') ? 'guest_errors,unimp,in_asm' : 'guest_errors,unimp', params.has('nochain') ? 'nochain' : ''].filter(Boolean).join(',');
|
const qemuLogFlags = params.has('trace') ? 'guest_errors,unimp,in_asm' : 'guest_errors,unimp';
|
||||||
// icount throttles TCG ~4.7x here and starves the guest watchdog; off by default. ?icount restores it.
|
// icount throttles TCG ~4.7x here and starves the guest watchdog; off by default. ?icount restores it.
|
||||||
const icount = params.has('icount') ? ['-icount', 'shift=auto,align=off,sleep=off'] : [];
|
const icount = params.has('icount') ? ['-icount', 'shift=auto,align=off,sleep=off'] : [];
|
||||||
const options = {
|
const options = {
|
||||||
@@ -488,33 +488,6 @@ async function boot(file, variant, setStatus) {
|
|||||||
stdin: () => null,
|
stdin: () => null,
|
||||||
};
|
};
|
||||||
options.preRun = [() => {
|
options.preRun = [() => {
|
||||||
if (params.get('tcgdiff2') === 'open') {
|
|
||||||
window.xteinkArmTcgDiff2 = () => options._wasm_diff_enable2();
|
|
||||||
} else if (params.has('tcgdiff2')) options._wasm_diff_enable2();
|
|
||||||
else if (params.has('tcgdiff')) options._wasm_diff_enable();
|
|
||||||
if (params.has('nostoretci')) options._wasm_disable_store_tci();
|
|
||||||
if (params.has('yieldtrace')) options._wasm_enable_yield_trace();
|
|
||||||
if (params.has('noremove')) options._wasm_set_disable_tb_removal();
|
|
||||||
if (params.get('ramrace') === 'open') {
|
|
||||||
window.xteinkEnableRamrace = () => options._wasm_enable_ramrace_trace();
|
|
||||||
} else if (params.has('ramrace')) options._wasm_enable_ramrace_trace();
|
|
||||||
if (params.get('stateflush') === 'open') {
|
|
||||||
window.xteinkEnableStateflush = () => options._wasm_stateflush_enable();
|
|
||||||
} else if (params.has('stateflush')) options._wasm_stateflush_enable();
|
|
||||||
if (params.get('tlbguard') === 'open') {
|
|
||||||
window.xteinkEnableTlbguard = () => options._wasm_tlb_guard_enable();
|
|
||||||
} else if (params.has('tlbguard')) options._wasm_tlb_guard_enable();
|
|
||||||
if (params.has('storehelpertci')) options._wasm_set_store_helper_tci();
|
|
||||||
if (params.has('sthash')) options._wasm_set_store_tci_hash(Number(params.get('sthash')) || 1);
|
|
||||||
if (params.has('stcmask')) options._wasm_set_store_bisect(Number(params.get('stcw')) || 0, Number(params.get('stcmask')) >>> 0, (Number(params.get('stcval')) || 0) >>> 0);
|
|
||||||
if (params.has('stpc')) {
|
|
||||||
const [lo, hi] = params.get('stpc').split('-').map(v => Number(v));
|
|
||||||
options._wasm_set_store_pc_window(lo >>> 0, hi >>> 0);
|
|
||||||
}
|
|
||||||
if (params.has('dumpstpc')) {
|
|
||||||
const [lo, hi] = params.get('dumpstpc').split('-').map(v => Number(v));
|
|
||||||
options._wasm_set_dump_pc_window(lo >>> 0, hi >>> 0);
|
|
||||||
}
|
|
||||||
options.FS.mkdirTree('/bios');
|
options.FS.mkdirTree('/bios');
|
||||||
options.FS.mkdirTree('/var/tmp');
|
options.FS.mkdirTree('/var/tmp');
|
||||||
options.FS.writeFile('/bios/esp32c3-rom.bin', rom);
|
options.FS.writeFile('/bios/esp32c3-rom.bin', rom);
|
||||||
|
|||||||
Reference in New Issue
Block a user