mirror of
https://github.com/shadps4-emu/shadPS4.git
synced 2025-08-01 23:12:35 +00:00
Adjust SPIR-V EmitReadConst
This commit is contained in:
parent
1f8ef4e1f6
commit
faf479dcd5
@ -163,13 +163,11 @@ void EmitGetGotoVariable(EmitContext&) {
|
|||||||
using BufferAlias = EmitContext::BufferAlias;
|
using BufferAlias = EmitContext::BufferAlias;
|
||||||
|
|
||||||
Id EmitReadConst(EmitContext& ctx, IR::Inst* inst) {
|
Id EmitReadConst(EmitContext& ctx, IR::Inst* inst) {
|
||||||
const u32 flatbuf_off_dw = inst->Flags<u32>();
|
|
||||||
const auto& srt_flatbuf = ctx.buffers.back();
|
const auto& srt_flatbuf = ctx.buffers.back();
|
||||||
ASSERT(srt_flatbuf.binding >= 0 && flatbuf_off_dw > 0 &&
|
ASSERT(srt_flatbuf.binding >= 0 && srt_flatbuf.buffer_type == BufferType::ReadConstUbo);
|
||||||
srt_flatbuf.buffer_type == BufferType::ReadConstUbo);
|
|
||||||
const auto [id, pointer_type] = srt_flatbuf[BufferAlias::U32];
|
const auto [id, pointer_type] = srt_flatbuf[BufferAlias::U32];
|
||||||
const Id ptr{
|
const Id ptr{
|
||||||
ctx.OpAccessChain(pointer_type, id, ctx.u32_zero_value, ctx.ConstU32(flatbuf_off_dw))};
|
ctx.OpAccessChain(pointer_type, id, ctx.u32_zero_value, ctx.Def(inst->Arg(1)))};
|
||||||
return ctx.OpLoad(ctx.U32[1], ptr);
|
return ctx.OpLoad(ctx.U32[1], ptr);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user