i965: Allow constant propagation into ASR and BFI1.
authorMatt Turner <mattst88@gmail.com>
Tue, 26 Nov 2013 21:49:31 +0000 (13:49 -0800)
committerMatt Turner <mattst88@gmail.com>
Thu, 5 Dec 2013 04:05:42 +0000 (20:05 -0800)
Reviewed-by: Eric Anholt <eric@anholt.net>
src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp
src/mesa/drivers/dri/i965/brw_vec4_copy_propagation.cpp

index accd9bd2bbb80ab469b6501dc7c842ce02e51766..a1720cdd1a0946e8e0c2d4720c44a4cec4fcf7ad 100644 (file)
@@ -344,6 +344,8 @@ fs_visitor::try_constant_propagate(fs_inst *inst, acp_entry *entry)
          progress = true;
          break;
 
+      case BRW_OPCODE_BFI1:
+      case BRW_OPCODE_ASR:
       case BRW_OPCODE_SHL:
       case BRW_OPCODE_SHR:
       case BRW_OPCODE_ADDC:
index 06f0e999ecf97044254c270abad6e5edf8891318..c9c739080ca63669d70c28e328f5f1e18755c129 100644 (file)
@@ -95,6 +95,8 @@ try_constant_propagation(vec4_instruction *inst, int arg, src_reg *values[4])
       inst->src[arg] = value;
       return true;
 
+   case BRW_OPCODE_BFI1:
+   case BRW_OPCODE_ASR:
    case BRW_OPCODE_SHL:
    case BRW_OPCODE_SHR:
    case BRW_OPCODE_ADDC: