public Operand Swizzle([NotNull] Operand source, SwizzleMask mask) { Operand tmp = CreateTemporary(mask.SwizzleOutFormat, source.ArraySize); Swizzle(source, tmp, mask); return(tmp); }
public SwizzleOperation(SwizzleMask mask) { this.mask = mask; inputDesc = new PinsDescriptor( new PinDescriptor(PinFormatHelper.ContainsComponents(mask.MinimumSwizzleInFormat), "Data to be swizzled.")); }
public void Swizzle([NotNull] Operand source, [NotNull] Operand dest, SwizzleMask mask) { if (dest.Format != mask.SwizzleOutFormat) { throw new ArgumentException("Destination does not match mask format."); } compiler.Swizzle(source.Name, mask, dest.Name); }
public WriteToSwizzledOperation(SwizzleMask mask) { this.mask = mask; }