private void SetUp(OpPhi op, SpirvInstructionTreeBuilder treeBuilder) { ResultType = treeBuilder.ResolveType(op.IdResultType); foreach (var item in op.VariableParent) { VariableParent.Add(treeBuilder.Parse(item)); } SetUpDecorations(op, treeBuilder); }
private void SetUp(OpGroupMemberDecorate op, SpirvInstructionTreeBuilder treeBuilder) { DecorationGroup = treeBuilder.GetNode(op.DecorationGroup); foreach (var item in op.Targets) { Targets.Add(treeBuilder.Parse(item)); } SetUpDecorations(op, treeBuilder); }
private void SetUp(OpCompositeExtract op, SpirvInstructionTreeBuilder treeBuilder) { ResultType = treeBuilder.ResolveType(op.IdResultType); Composite = treeBuilder.GetNode(op.Composite); foreach (var item in op.Indexes) { Indexes.Add(treeBuilder.Parse(item)); } SetUpDecorations(op, treeBuilder); }
private void SetUp(OpSwitch op, SpirvInstructionTreeBuilder treeBuilder) { Selector = treeBuilder.GetNode(op.Selector); Default = treeBuilder.GetNode(op.Default); foreach (var item in op.Target) { Target.Add(treeBuilder.Parse(item)); } SetUpDecorations(op, treeBuilder); }
private void SetUp(OpBranchConditional op, SpirvInstructionTreeBuilder treeBuilder) { Condition = treeBuilder.GetNode(op.Condition); TrueLabel = (Label)treeBuilder.GetNode(op.TrueLabel); FalseLabel = (Label)treeBuilder.GetNode(op.FalseLabel); foreach (var item in op.Branchweights) { Branchweights.Add(treeBuilder.Parse(item)); } SetUpDecorations(op, treeBuilder); }
private void SetUp(OpVectorShuffle op, SpirvInstructionTreeBuilder treeBuilder) { ResultType = treeBuilder.ResolveType(op.IdResultType); Vector1 = treeBuilder.GetNode(op.Vector1); Vector2 = treeBuilder.GetNode(op.Vector2); foreach (var item in op.Components) { Components.Add(treeBuilder.Parse(item)); } SetUpDecorations(op, treeBuilder); }
private void SetUp(OpSpecConstantOp op, SpirvInstructionTreeBuilder treeBuilder) { ResultType = treeBuilder.ResolveType(op.IdResultType); Opcode = treeBuilder.Parse(op.Opcode); SetUpDecorations(op, treeBuilder); }