/// <summary> /// Write instruction operands into bytecode stream. /// </summary> /// <param name="writer">Bytecode writer.</param> public override void WriteOperands(WordWriter writer) { NDRange.Write(writer); Invoke.Write(writer); Param.Write(writer); ParamSize.Write(writer); ParamAlign.Write(writer); }
/// <summary> /// Calculate number of words to fit complete instruction bytecode. /// </summary> /// <returns>Number of words in instruction bytecode.</returns> public override uint GetWordCount() { uint wordCount = 0; wordCount += IdResultType.GetWordCount(); wordCount += IdResult.GetWordCount(); wordCount += NDRange.GetWordCount(); wordCount += Invoke.GetWordCount(); wordCount += Param.GetWordCount(); wordCount += ParamSize.GetWordCount(); wordCount += ParamAlign.GetWordCount(); return(wordCount); }
/// <summary> /// Write instruction operands into bytecode stream. /// </summary> /// <param name="writer">Bytecode writer.</param> public override void WriteOperands(WordWriter writer) { Queue.Write(writer); Flags.Write(writer); NDRange.Write(writer); NumEvents.Write(writer); WaitEvents.Write(writer); RetEvent.Write(writer); Invoke.Write(writer); Param.Write(writer); ParamSize.Write(writer); ParamAlign.Write(writer); LocalSize.Write(writer); }
/// <summary> /// Calculate number of words to fit complete instruction bytecode. /// </summary> /// <returns>Number of words in instruction bytecode.</returns> public override uint GetWordCount() { uint wordCount = 0; wordCount += IdResultType.GetWordCount(); wordCount += IdResult.GetWordCount(); wordCount += Queue.GetWordCount(); wordCount += Flags.GetWordCount(); wordCount += NDRange.GetWordCount(); wordCount += NumEvents.GetWordCount(); wordCount += WaitEvents.GetWordCount(); wordCount += RetEvent.GetWordCount(); wordCount += Invoke.GetWordCount(); wordCount += Param.GetWordCount(); wordCount += ParamSize.GetWordCount(); wordCount += ParamAlign.GetWordCount(); wordCount += LocalSize.GetWordCount(); return(wordCount); }