/* Special case instructions which have extra implied registers used. */
switch (inst->opcode) {
- case SHADER_OPCODE_URB_WRITE_SIMD8:
- case FS_OPCODE_FB_WRITE:
- /* We could omit this for the !inst->header_present case, except that
- * the simulator apparently incorrectly reads from g0/g1 instead of
- * sideband. It also really freaks out driver developers to see g0
- * used in unusual places, so just always reserve it.
- */
- payload_last_use_ip[0] = use_ip;
- payload_last_use_ip[1] = use_ip;
- break;
-
case FS_OPCODE_LINTERP:
/* On gen6+ in SIMD16, there are 4 adjacent registers used by
* PLN's sourcing of the deltas, while we list only the first one
break;
default:
+ if (inst->eot) {
+ /* We could omit this for the !inst->header_present case, except
+ * that the simulator apparently incorrectly reads from g0/g1
+ * instead of sideband. It also really freaks out driver
+ * developers to see g0 used in unusual places, so just always
+ * reserve it.
+ */
+ payload_last_use_ip[0] = use_ip;
+ payload_last_use_ip[1] = use_ip;
+ }
break;
}