Пример #1
0
 public GenericCastToPtrExplicit(SpirvTypeBase resultType, Node pointer, Spv.StorageClass storage, string debugName = null)
 {
     this.ResultType = resultType;
     this.Pointer    = pointer;
     this.Storage    = storage;
     DebugName       = debugName;
 }
Пример #2
0
 public Variable(SpirvTypeBase resultType, Spv.StorageClass storageClass, Node initializer, string debugName = null)
 {
     this.ResultType   = resultType;
     this.StorageClass = storageClass;
     this.Initializer  = initializer;
     DebugName         = debugName;
 }
        public override void Parse(WordReader reader, uint wordCount)
        {
            var end = reader.Position + wordCount - 1;

            PointerType  = Spv.IdRef.Parse(reader, end - reader.Position);
            StorageClass = Spv.StorageClass.Parse(reader, end - reader.Position);
        }
Пример #4
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);
            Storage = Spv.StorageClass.Parse(reader, end - reader.Position);
        }
Пример #5
0
 public void SetUp(OpTypeForwardPointer op, SpirvInstructionTreeBuilder treeBuilder)
 {
     PointerType  = treeBuilder.ResolveType(op.PointerType);
     StorageClass = op.StorageClass;
     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);
     Storage = Spv.StorageClass.Parse(reader, end - reader.Position);
 }