Esempio n. 1
0
 public Store(Node pointer, Node @object, Spv.MemoryAccess memoryAccess, string debugName = null)
 {
     this.Pointer      = pointer;
     this.Object       = @object;
     this.MemoryAccess = memoryAccess;
     DebugName         = debugName;
 }
Esempio n. 2
0
 private void SetUp(OpStore op, SpirvInstructionTreeBuilder treeBuilder)
 {
     Pointer      = treeBuilder.GetNode(op.Pointer);
     Object       = treeBuilder.GetNode(op.Object);
     MemoryAccess = op.MemoryAccess;
     SetUpDecorations(op, treeBuilder);
 }
 /// <summary>
 /// Read instruction operands from the bytecode source.
 /// </summary>
 /// <param name="reader">Bytecode source.</param>
 /// <param name="end">Index of a next word right after this instruction.</param>
 public override void ParseOperands(WordReader reader, uint end)
 {
     Pointer      = Spv.IdRef.Parse(reader, end - reader.Position);
     Stride       = Spv.IdRef.Parse(reader, end - reader.Position);
     ColumnMajor  = Spv.IdRef.Parse(reader, end - reader.Position);
     MemoryAccess = Spv.MemoryAccess.ParseOptional(reader, end - reader.Position);
 }
Esempio n. 4
0
 /// <summary>
 /// Read instruction operands from the bytecode source.
 /// </summary>
 /// <param name="reader">Bytecode source.</param>
 /// <param name="end">Index of a next word right after this instruction.</param>
 public override void ParseOperands(WordReader reader, uint end)
 {
     Target        = Spv.IdRef.Parse(reader, end - reader.Position);
     Source        = Spv.IdRef.Parse(reader, end - reader.Position);
     MemoryAccess  = Spv.MemoryAccess.ParseOptional(reader, end - reader.Position);
     MemoryAccess2 = Spv.MemoryAccess.ParseOptional(reader, end - reader.Position);
 }
Esempio n. 5
0
 public Load(SpirvTypeBase resultType, Node pointer, Spv.MemoryAccess memoryAccess, string debugName = null)
 {
     this.ResultType   = resultType;
     this.Pointer      = pointer;
     this.MemoryAccess = memoryAccess;
     DebugName         = debugName;
 }
        public override void Parse(WordReader reader, uint wordCount)
        {
            var end = reader.Position + wordCount - 1;

            Target       = Spv.IdRef.Parse(reader, end - reader.Position);
            Source       = Spv.IdRef.Parse(reader, end - reader.Position);
            MemoryAccess = Spv.MemoryAccess.ParseOptional(reader, end - reader.Position);
        }
Esempio n. 7
0
 private void SetUp(OpCopyMemory op, SpirvInstructionTreeBuilder treeBuilder)
 {
     Target        = treeBuilder.GetNode(op.Target);
     Source        = treeBuilder.GetNode(op.Source);
     MemoryAccess  = op.MemoryAccess;
     MemoryAccess2 = op.MemoryAccess2;
     SetUpDecorations(op, treeBuilder);
 }
Esempio n. 8
0
 public CopyMemory(Node target, Node source, Spv.MemoryAccess memoryAccess, Spv.MemoryAccess memoryAccess2, string debugName = null)
 {
     this.Target        = target;
     this.Source        = source;
     this.MemoryAccess  = memoryAccess;
     this.MemoryAccess2 = memoryAccess2;
     DebugName          = debugName;
 }
 private void SetUp(OpCooperativeMatrixStoreNV op, SpirvInstructionTreeBuilder treeBuilder)
 {
     Pointer      = treeBuilder.GetNode(op.Pointer);
     Object       = treeBuilder.GetNode(op.Object);
     Stride       = treeBuilder.GetNode(op.Stride);
     ColumnMajor  = treeBuilder.GetNode(op.ColumnMajor);
     MemoryAccess = op.MemoryAccess;
     SetUpDecorations(op, treeBuilder);
 }
Esempio n. 10
0
        public override void Parse(WordReader reader, uint wordCount)
        {
            var end = reader.Position + wordCount - 1;

            IdResultType = Spv.IdResultType.Parse(reader, end - reader.Position);
            IdResult     = Spv.IdResult.Parse(reader, end - reader.Position);
            reader.Instructions.Add(this);
            Pointer      = Spv.IdRef.Parse(reader, end - reader.Position);
            MemoryAccess = Spv.MemoryAccess.ParseOptional(reader, end - reader.Position);
        }
 public CooperativeMatrixStoreNV(Node pointer, Node @object, Node stride, Node columnMajor, Spv.MemoryAccess memoryAccess, string debugName = null)
 {
     this.Pointer      = pointer;
     this.Object       = @object;
     this.Stride       = stride;
     this.ColumnMajor  = columnMajor;
     this.MemoryAccess = memoryAccess;
     DebugName         = debugName;
 }
 public static CooperativeMatrixStoreNV ThenCooperativeMatrixStoreNV(this INodeWithNext node, Node pointer, Node @object, Node stride, Node columnMajor, Spv.MemoryAccess memoryAccess, string debugName = null)
 {
     return(node.Then(new CooperativeMatrixStoreNV(pointer, @object, stride, columnMajor, memoryAccess, debugName)));
 }
Esempio n. 13
0
 public static Store ThenStore(this INodeWithNext node, Node pointer, Node @object, Spv.MemoryAccess memoryAccess, string debugName = null)
 {
     return(node.Then(new Store(pointer, @object, memoryAccess, debugName)));
 }
Esempio n. 14
0
 public static CopyMemorySized ThenCopyMemorySized(this INodeWithNext node, Node target, Node source, Node size, Spv.MemoryAccess memoryAccess, Spv.MemoryAccess memoryAccess2, string debugName = null)
 {
     return(node.Then(new CopyMemorySized(target, source, size, memoryAccess, memoryAccess2, debugName)));
 }
Esempio n. 15
0
 public CooperativeMatrixLoadNV(SpirvTypeBase resultType, Node pointer, Node stride, Node columnMajor, Spv.MemoryAccess memoryAccess, string debugName = null)
 {
     this.ResultType   = resultType;
     this.Pointer      = pointer;
     this.Stride       = stride;
     this.ColumnMajor  = columnMajor;
     this.MemoryAccess = memoryAccess;
     DebugName         = debugName;
 }