mirror of https://github.com/RPCS3/rpcs3.git
Remove std::rotr usage for now
It seems to be missing on some std implementations.
This commit is contained in:
parent
c22d778143
commit
7824419bbf
|
@ -63,12 +63,13 @@ union ppu_opcode_t
|
|||
|
||||
constexpr u64 ppu_rotate_mask(u32 mb, u32 me)
|
||||
{
|
||||
return std::rotr<u64>(~0ull << (~(me - mb) & 63), mb & 63);
|
||||
const u64 mask = ~0ull << (~(me - mb) & 63);
|
||||
return (mask >> (mb & 63)) | (mask << ((64 - mb) & 63));
|
||||
}
|
||||
|
||||
constexpr u32 ppu_decode(u32 inst)
|
||||
{
|
||||
return std::rotr<u32>(inst, 26) & 0x1ffff; // Rotate + mask
|
||||
return ((inst >> 26) | (inst << 6)) & 0x1ffff; // Rotate + mask
|
||||
}
|
||||
|
||||
// PPU decoder object. D provides functions. T is function pointer type returned.
|
||||
|
|
|
@ -14,6 +14,7 @@
|
|||
#include "Overlays/overlay_perf_metrics.h"
|
||||
#include "Utilities/date_time.h"
|
||||
#include "Utilities/span.h"
|
||||
#include "Utilities/asm.h"
|
||||
#include "Utilities/StrUtil.h"
|
||||
|
||||
#include <cereal/archives/binary.hpp>
|
||||
|
@ -2443,7 +2444,7 @@ namespace rsx
|
|||
|
||||
for (u32 ea = address >> 20, end = ea + (size >> 20); ea < end; ea++)
|
||||
{
|
||||
const u32 io = std::rotr<u32>(iomap_table.io[ea], 20);
|
||||
const u32 io = utils::ror32(iomap_table.io[ea], 20);
|
||||
|
||||
if (io + 1)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue