mirror of
https://github.com/melonDS-emu/melonDS.git
synced 2025-07-23 14:19:55 -06:00
Multiinstance jit (#2201)
* works on Linux x64 still needs to be fixed for everything else * use lots of PROT_NONE memory to reliably reserve virtual address space * multi instance fastmem on Linux * Windows * blarg * disable fastmem if the page size is not 4kb * fix fast mem dialog option * make aarch64 work as well * fastmem 16kb pages support
This commit is contained in:
@ -165,7 +165,6 @@ EmuInstance::~EmuInstance()
|
||||
audioDeInit();
|
||||
inputDeInit();
|
||||
|
||||
NDS::Current = nullptr;
|
||||
if (nds)
|
||||
{
|
||||
saveRTCData();
|
||||
@ -1339,7 +1338,6 @@ bool EmuInstance::updateConsole() noexcept
|
||||
renderLock.lock();
|
||||
if ((!nds) || (consoleType != nds->ConsoleType))
|
||||
{
|
||||
NDS::Current = nullptr;
|
||||
if (nds)
|
||||
{
|
||||
saveRTCData();
|
||||
@ -1351,7 +1349,6 @@ bool EmuInstance::updateConsole() noexcept
|
||||
else
|
||||
nds = new NDS(std::move(ndsargs), this);
|
||||
|
||||
NDS::Current = nds;
|
||||
nds->Reset();
|
||||
loadRTCData();
|
||||
//emuThread->updateVideoRenderer(); // not actually needed?
|
||||
|
@ -82,9 +82,6 @@ EmuSettingsDialog::EmuSettingsDialog(QWidget* parent) : QDialog(parent), ui(new
|
||||
ui->chkJITBranchOptimisations->setChecked(cfg.GetBool("JIT.BranchOptimisations"));
|
||||
ui->chkJITLiteralOptimisations->setChecked(cfg.GetBool("JIT.LiteralOptimisations"));
|
||||
ui->chkJITFastMemory->setChecked(cfg.GetBool("JIT.FastMemory"));
|
||||
#ifdef __APPLE__
|
||||
ui->chkJITFastMemory->setDisabled(true);
|
||||
#endif
|
||||
ui->spnJITMaximumBlockSize->setValue(cfg.GetInt("JIT.MaxBlockSize"));
|
||||
#else
|
||||
ui->chkEnableJIT->setDisabled(true);
|
||||
@ -541,9 +538,7 @@ void EmuSettingsDialog::on_chkEnableJIT_toggled()
|
||||
bool disabled = !ui->chkEnableJIT->isChecked();
|
||||
ui->chkJITBranchOptimisations->setDisabled(disabled);
|
||||
ui->chkJITLiteralOptimisations->setDisabled(disabled);
|
||||
#ifndef __APPLE__
|
||||
ui->chkJITFastMemory->setDisabled(disabled);
|
||||
#endif
|
||||
ui->chkJITFastMemory->setDisabled(disabled || !ARMJIT_Memory::IsFastMemSupported());
|
||||
ui->spnJITMaximumBlockSize->setDisabled(disabled);
|
||||
|
||||
on_cbGdbEnabled_toggled();
|
||||
|
Reference in New Issue
Block a user