2016-07-06 20:14:12 +00:00
|
|
|
#pragma once
|
|
|
|
#if defined(__arm__) || defined(_M_ARM)
|
2022-10-10 00:22:17 +00:00
|
|
|
#include <Project64-core/N64System/Recompiler/RegBase.h>
|
2016-07-06 20:14:12 +00:00
|
|
|
|
2022-10-24 00:45:46 +00:00
|
|
|
class CCodeBlock;
|
|
|
|
class CArmOps;
|
|
|
|
|
2016-07-06 20:14:12 +00:00
|
|
|
class CArmRegInfo :
|
2022-10-24 00:45:46 +00:00
|
|
|
public CRegBase
|
2016-07-06 20:14:12 +00:00
|
|
|
{
|
|
|
|
public:
|
2022-09-12 13:14:42 +00:00
|
|
|
CArmRegInfo(CCodeBlock & CodeBlock, CArmOps & Assembler);
|
2022-10-10 00:22:17 +00:00
|
|
|
CArmRegInfo(const CArmRegInfo &);
|
2016-08-11 11:09:21 +00:00
|
|
|
~CArmRegInfo();
|
|
|
|
|
2022-10-10 00:22:17 +00:00
|
|
|
CArmRegInfo & operator=(const CArmRegInfo &);
|
2016-08-11 11:09:21 +00:00
|
|
|
|
2022-10-10 00:22:17 +00:00
|
|
|
bool operator==(const CArmRegInfo & right) const;
|
|
|
|
bool operator!=(const CArmRegInfo & right) const;
|
2022-12-06 22:34:55 +00:00
|
|
|
|
|
|
|
void UnMap_GPR(uint32_t Reg, bool WriteBackValue);
|
2016-08-11 11:09:21 +00:00
|
|
|
};
|
2022-10-24 00:45:46 +00:00
|
|
|
|
2016-07-06 20:14:12 +00:00
|
|
|
#endif
|