Input attribute registers store the per-vertex data given by the CPU and hence are read-only.
Input attribute registers store the per-vertex data given by the CPU and hence are read-only.
−
Output attribute registers hold the data to be passed to the later GPU stages and are write-only. Each of the output attribute register components is assigned a semantic by setting the corresponding [[GPU_Internal_Registers]]. Output registers o7-o15 are only available in vertex shaders.
+
Output registers hold the data to be passed to the later GPU stages and are write-only. Each of the output register is assigned a semantic by setting the corresponding [[GPU_Internal_Registers]]. Output registers o7-o15 are only available in vertex shaders.
−
It appears that writing twice to a component of an output register that was written to before can cause problems (e.g. GPU hangs).
+
Keep in mind that writing to an output register that has been previously written to within 8 cycles of the first write appears to cause the GPU to hang. After 8 cycles, all further writes to an output register appear to be ignored and do not cause a GPU hang.
Temporary registers can be used for intermediate calculations and can be both read and written.
Temporary registers can be used for intermediate calculations and can be both read and written.