diff options
| author | bunnei <bunneidev@gmail.com> | 2019-09-18 16:26:05 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-09-18 16:26:05 -0400 |
| commit | b31880dc5e0d9aab1171d3476453ad2db00cfd3a (patch) | |
| tree | b1ec38b1d4be6f1f61d987608d99d1f6ee428a83 /src/video_core/shader/node.h | |
| parent | 393cc3ef2fe6e6b83c7eb30dc4c0a530ffbe8e43 (diff) | |
| parent | 0f7b813d654b01a52ed26ad3872a2bca12d0c6d0 (diff) | |
Merge pull request #2784 from ReinUsesLisp/smem
shader_ir: Implement shared memory
Diffstat (limited to 'src/video_core/shader/node.h')
| -rw-r--r-- | src/video_core/shader/node.h | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/src/video_core/shader/node.h b/src/video_core/shader/node.h index b47b201cf..425111cc4 100644 --- a/src/video_core/shader/node.h +++ b/src/video_core/shader/node.h @@ -206,12 +206,13 @@ class PredicateNode; class AbufNode; class CbufNode; class LmemNode; +class SmemNode; class GmemNode; class CommentNode; using NodeData = std::variant<OperationNode, ConditionalNode, GprNode, ImmediateNode, InternalFlagNode, - PredicateNode, AbufNode, CbufNode, LmemNode, GmemNode, CommentNode>; + PredicateNode, AbufNode, CbufNode, LmemNode, SmemNode, GmemNode, CommentNode>; using Node = std::shared_ptr<NodeData>; using Node4 = std::array<Node, 4>; using NodeBlock = std::vector<Node>; @@ -583,6 +584,19 @@ private: Node address; }; +/// Shared memory node +class SmemNode final { +public: + explicit SmemNode(Node address) : address{std::move(address)} {} + + const Node& GetAddress() const { + return address; + } + +private: + Node address; +}; + /// Global memory node class GmemNode final { public: |
