diff options
| author | VolcaEM <63682805+VolcaEM@users.noreply.github.com> | 2020-06-25 23:34:37 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-06-25 23:34:37 +0200 |
| commit | 0f4512291a0504b32fac248f73a68fec34f657fe (patch) | |
| tree | 3c69736a2ac82a9a0076ec3b79673c814e5f1abd /src/video_core/shader/shader_ir.h | |
| parent | a46df409397855812812e83ae3ed6ce6261b72cb (diff) | |
| parent | a980b4cbc16cf1efad077053e1bf2bbb53c3d60a (diff) | |
Merge branch 'master' into quickstart-faq
Diffstat (limited to 'src/video_core/shader/shader_ir.h')
| -rw-r--r-- | src/video_core/shader/shader_ir.h | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/src/video_core/shader/shader_ir.h b/src/video_core/shader/shader_ir.h index 15ae152f2..3a98b2104 100644 --- a/src/video_core/shader/shader_ir.h +++ b/src/video_core/shader/shader_ir.h @@ -330,8 +330,8 @@ private: OperationCode GetPredicateCombiner(Tegra::Shader::PredOperation operation); /// Queries the missing sampler info from the execution context. - SamplerInfo GetSamplerInfo(SamplerInfo info, u32 offset, - std::optional<u32> buffer = std::nullopt); + SamplerInfo GetSamplerInfo(SamplerInfo info, + std::optional<Tegra::Engines::SamplerDescriptor> sampler); /// Accesses a texture sampler. std::optional<Sampler> GetSampler(Tegra::Shader::Sampler sampler, SamplerInfo info); @@ -409,8 +409,14 @@ private: std::tuple<Node, u32, u32> TrackCbuf(Node tracked, const NodeBlock& code, s64 cursor) const; - std::tuple<Node, TrackSampler> TrackBindlessSampler(Node tracked, const NodeBlock& code, - s64 cursor); + std::pair<Node, TrackSampler> TrackBindlessSampler(Node tracked, const NodeBlock& code, + s64 cursor); + + std::pair<Node, TrackSampler> HandleBindlessIndirectRead(const CbufNode& cbuf, + const OperationNode& operation, + Node gpr, Node base_offset, + Node tracked, const NodeBlock& code, + s64 cursor); std::optional<u32> TrackImmediate(Node tracked, const NodeBlock& code, s64 cursor) const; |
