mirror of
https://github.com/shadps4-emu/shadPS4.git
synced 2025-07-27 20:44:28 +00:00
Offset in bytes
This commit is contained in:
parent
4c38a1d429
commit
e97c3e9653
@ -167,7 +167,8 @@ Id EmitReadConst(EmitContext& ctx, IR::Inst* inst, Id addr, Id offset) {
|
|||||||
const Id base_hi = ctx.OpUConvert(ctx.U64, ctx.OpCompositeExtract(ctx.U32[1], addr, 1));
|
const Id base_hi = ctx.OpUConvert(ctx.U64, ctx.OpCompositeExtract(ctx.U32[1], addr, 1));
|
||||||
const Id base_sift = ctx.OpShiftLeftLogical(ctx.U64, base_hi, ctx.ConstU32(32u));
|
const Id base_sift = ctx.OpShiftLeftLogical(ctx.U64, base_hi, ctx.ConstU32(32u));
|
||||||
const Id base = ctx.OpBitwiseOr(ctx.U64, base_lo, base_sift);
|
const Id base = ctx.OpBitwiseOr(ctx.U64, base_lo, base_sift);
|
||||||
const Id address = ctx.OpIAdd(ctx.U64, base, ctx.OpUConvert(ctx.U64, offset));
|
const Id offset_bytes = ctx.OpShiftLeftLogical(ctx.U32[1], offset, ctx.ConstU32(2u));
|
||||||
|
const Id address = ctx.OpIAdd(ctx.U64, base, ctx.OpUConvert(ctx.U64, offset_bytes));
|
||||||
return ctx.EmitMemoryAccess(ctx.U32[1], address, [&]() {
|
return ctx.EmitMemoryAccess(ctx.U32[1], address, [&]() {
|
||||||
const u32 flatbuf_off_dw = inst->Flags<u32>();
|
const u32 flatbuf_off_dw = inst->Flags<u32>();
|
||||||
if (flatbuf_off_dw == 0) {
|
if (flatbuf_off_dw == 0) {
|
||||||
|
Loading…
Reference in New Issue
Block a user