dolphin/Source/Core/Core/PowerPC/JitInterface.h
magumagu ac54c6a4e2 Make address translation respect the CPU translation mode.
The PowerPC CPU has bits in MSR (DR and IR) which control whether
addresses are translated. We should respect these instead of mixing
physical addresses and translated addresses into the same address space.

This is mostly mass-renaming calls to memory accesses APIs from places
which expect address translation to use a different version from those
which do not expect address translation.

This does very little on its own, but it's the first step to a correct BAT
implementation.
2015-02-11 13:56:22 -08:00

46 lines
939 B
C++

// Copyright 2013 Dolphin Emulator Project
// Licensed under GPLv2
// Refer to the license.txt file included.
#pragma once
#include <string>
#include "Common/ChunkFile.h"
#include "Core/MachineContext.h"
#include "Core/PowerPC/CPUCoreBase.h"
namespace JitInterface
{
enum class ExceptionType
{
EXCEPTIONS_FIFO_WRITE,
EXCEPTIONS_PAIRED_QUANTIZE
};
void DoState(PointerWrap &p);
CPUCoreBase *InitJitCore(int core);
void InitTables(int core);
CPUCoreBase *GetCore();
// Debugging
void WriteProfileResults(const std::string& filename);
// Memory Utilities
bool HandleFault(uintptr_t access_address, SContext* ctx);
// Clearing CodeCache
void ClearCache();
void ClearSafe();
// If "forced" is true, a recompile is being requested on code that hasn't been modified.
void InvalidateICache(u32 address, u32 size, bool forced);
void CompileExceptionCheck(ExceptionType type);
void Shutdown();
}
extern bool bMMU;