(assorted cleanup and reindent that didn't belong in the quantizer change)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4855 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
hrydgard
2010-01-16 19:01:00 +00:00
parent 1848e93790
commit 901316e61b
4 changed files with 1245 additions and 1257 deletions

View File

@ -415,6 +415,9 @@ enum NormalSSEOps
} }
} }
// INC/DEC considered harmful on newer CPUs due to partial flag set.
// Use ADD, SUB instead.
/* /*
void XEmitter::INC(int bits, OpArg arg) void XEmitter::INC(int bits, OpArg arg)
{ {
@ -1154,6 +1157,10 @@ enum NormalSSEOps
void XEmitter::LDDQU(X64Reg dest, OpArg arg) {WriteSSEOp(64, sseLDDQU, false, dest, arg);} // For integer data only void XEmitter::LDDQU(X64Reg dest, OpArg arg) {WriteSSEOp(64, sseLDDQU, false, dest, arg);} // For integer data only
// THESE TWO ARE UNTESTED.
void XEmitter::UNPCKLPS(X64Reg dest, OpArg arg) {WriteSSEOp(32, 0x14, true, dest, arg);}
void XEmitter::UNPCKHPS(X64Reg dest, OpArg arg) {WriteSSEOp(32, 0x15, true, dest, arg);}
void XEmitter::UNPCKLPD(X64Reg dest, OpArg arg) {WriteSSEOp(64, 0x14, true, dest, arg);} void XEmitter::UNPCKLPD(X64Reg dest, OpArg arg) {WriteSSEOp(64, 0x14, true, dest, arg);}
void XEmitter::UNPCKHPD(X64Reg dest, OpArg arg) {WriteSSEOp(64, 0x15, true, dest, arg);} void XEmitter::UNPCKHPD(X64Reg dest, OpArg arg) {WriteSSEOp(64, 0x15, true, dest, arg);}
@ -1167,7 +1174,7 @@ enum NormalSSEOps
{ {
// Simulate this instruction with SSE2 instructions // Simulate this instruction with SSE2 instructions
if (!arg.IsSimpleReg(regOp)) if (!arg.IsSimpleReg(regOp))
MOVQ_xmm(regOp, arg); MOVQ_xmm(regOp, arg); // MOVSD better?
UNPCKLPD(regOp, R(regOp)); UNPCKLPD(regOp, R(regOp));
} }
} }

View File

@ -458,6 +458,11 @@ public:
// SSE/SSE2: Useful alternative to shuffle in some cases. // SSE/SSE2: Useful alternative to shuffle in some cases.
void MOVDDUP(X64Reg regOp, OpArg arg); void MOVDDUP(X64Reg regOp, OpArg arg);
// THESE TWO ARE NEW AND UNTESTED
void UNPCKLPS(X64Reg dest, OpArg src);
void UNPCKHPS(X64Reg dest, OpArg src);
// These are OK.
void UNPCKLPD(X64Reg dest, OpArg src); void UNPCKLPD(X64Reg dest, OpArg src);
void UNPCKHPD(X64Reg dest, OpArg src); void UNPCKHPD(X64Reg dest, OpArg src);

View File

@ -44,13 +44,13 @@ public:
const std::string& GetDeviceName() const { return m_Name; } const std::string& GetDeviceName() const { return m_Name; }
u32 GetDeviceID() const { return m_DeviceID; } u32 GetDeviceID() const { return m_DeviceID; }
virtual bool Open(u32 _CommandAddress, u32 _Mode) { _dbg_assert_msg_(WII_IPC_HLE, 0, "%s is not able to run Open()", m_Name.c_str()); m_Active = true; return true; } virtual bool Open(u32 _CommandAddress, u32 _Mode) { _dbg_assert_msg_(WII_IPC_HLE, 0, "%s does not support Open()", m_Name.c_str()); m_Active = true; return true; }
virtual bool Close(u32 _CommandAddress, bool _bForce = false) { _dbg_assert_msg_(WII_IPC_HLE, 0, "%s is not able to run Close()", m_Name.c_str()); m_Active = false; return true; } virtual bool Close(u32 _CommandAddress, bool _bForce = false) { _dbg_assert_msg_(WII_IPC_HLE, 0, "%s does not support Close()", m_Name.c_str()); m_Active = false; return true; }
virtual bool Seek(u32 _CommandAddress) { _dbg_assert_msg_(WII_IPC_HLE, 0, "%s is not able to run Seek()", m_Name.c_str()); return true; } virtual bool Seek(u32 _CommandAddress) { _dbg_assert_msg_(WII_IPC_HLE, 0, "%s does not support Seek()", m_Name.c_str()); return true; }
virtual bool Read(u32 _CommandAddress) { _dbg_assert_msg_(WII_IPC_HLE, 0, "%s is not able to run Read()", m_Name.c_str()); return true; } virtual bool Read(u32 _CommandAddress) { _dbg_assert_msg_(WII_IPC_HLE, 0, "%s does not support Read()", m_Name.c_str()); return true; }
virtual bool Write(u32 _CommandAddress) { _dbg_assert_msg_(WII_IPC_HLE, 0, "%s is not able to run Write()", m_Name.c_str()); return true; } virtual bool Write(u32 _CommandAddress) { _dbg_assert_msg_(WII_IPC_HLE, 0, "%s does not support Write()", m_Name.c_str()); return true; }
virtual bool IOCtl(u32 _CommandAddress) { _dbg_assert_msg_(WII_IPC_HLE, 0, "%s is not able to run IOCtl()", m_Name.c_str()); return true; } virtual bool IOCtl(u32 _CommandAddress) { _dbg_assert_msg_(WII_IPC_HLE, 0, "%s does not support IOCtl()", m_Name.c_str()); return true; }
virtual bool IOCtlV(u32 _CommandAddress) { _dbg_assert_msg_(WII_IPC_HLE, 0, "%s is not able to run IOCtlV()", m_Name.c_str()); return true; } virtual bool IOCtlV(u32 _CommandAddress) { _dbg_assert_msg_(WII_IPC_HLE, 0, "%s does not support IOCtlV()", m_Name.c_str()); return true; }
virtual u32 Update() { return 0; } virtual u32 Update() { return 0; }
@ -160,7 +160,6 @@ protected:
GENERIC_LOG(LogType, Verbosity, "======= DumpAsync ======"); GENERIC_LOG(LogType, Verbosity, "======= DumpAsync ======");
u32 BufferOffset = BufferVector; u32 BufferOffset = BufferVector;
for (u32 i = 0; i < NumberInBuffer; i++) for (u32 i = 0; i < NumberInBuffer; i++)
{ {
u32 InBuffer = Memory::Read_U32(BufferOffset); BufferOffset += 4; u32 InBuffer = Memory::Read_U32(BufferOffset); BufferOffset += 4;

View File

@ -40,7 +40,6 @@
// ugly that this lib included code from the main // ugly that this lib included code from the main
#include "../../DolphinWX/Src/Globals.h" #include "../../DolphinWX/Src/Globals.h"
enum enum
{ {
IDM_MEM_ADDRBOX = 350, IDM_MEM_ADDRBOX = 350,
@ -294,38 +293,26 @@ void CMemoryWindow::U32(wxCommandEvent& event){
} }
void CMemoryWindow::onSearch(wxCommandEvent& event) { void CMemoryWindow::onSearch(wxCommandEvent& event) {
u8* TheRAM=0; u8* TheRAM=0;
u32 szRAM=0; u32 szRAM=0;
switch (memview->GetMemoryType()) switch (memview->GetMemoryType())
{ {
case 0: case 0:
default: default:
{
if (Memory::m_pRAM) if (Memory::m_pRAM)
{ {
TheRAM=Memory::m_pRAM; TheRAM=Memory::m_pRAM;
szRAM=Memory::REALRAM_SIZE; szRAM=Memory::REALRAM_SIZE;
}
} }
break; break;
case 1: case 1:
{ {
u8* aram = DSP::GetARAMPtr(); u8* aram = DSP::GetARAMPtr();
if (aram) if (aram)
{ {
TheRAM=aram; TheRAM=aram;
szRAM=DSP::ARAM_SIZE; szRAM=DSP::ARAM_SIZE;
} }
} }
break; break;
} }
@ -393,14 +380,11 @@ void CMemoryWindow::onSearch(wxCommandEvent& event){
unsigned char* pnt=&Dest.front(); unsigned char* pnt=&Dest.front();
unsigned int k=0; unsigned int k=0;
//grab //grab
wxString txt = addrbox->GetValue(); wxString txt = addrbox->GetValue();
u32 addr=0; u32 addr=0;
if (txt.size()) if (txt.size())
{ {
sscanf(txt.mb_str(), "%08x", &addr); sscanf(txt.mb_str(), "%08x", &addr);
} }
i=addr+4; i=addr+4;
for(;szRAM;i++){ for(;szRAM;i++){
@ -411,8 +395,6 @@ void CMemoryWindow::onSearch(wxCommandEvent& event){
k=0; k=0;
break; break;
} }
} }
if(k==size){ if(k==size){
//Match was found //Match was found
@ -426,20 +408,15 @@ void CMemoryWindow::onSearch(wxCommandEvent& event){
OnAddrBoxChange(event); OnAddrBoxChange(event);
return; return;
} }
} }
wxMessageBox(_T("No match was found.")); wxMessageBox(_T("No match was found."));
} }
} }
void CMemoryWindow::onAscii(wxCommandEvent& event) { void CMemoryWindow::onAscii(wxCommandEvent& event) {
chkHex->SetValue(0); chkHex->SetValue(0);
} }
void CMemoryWindow::onHex(wxCommandEvent& event) { void CMemoryWindow::onHex(wxCommandEvent& event) {
chkAscii->SetValue(0); chkAscii->SetValue(0);
} }