diff options
author | Kenneth Graunke <[email protected]> | 2016-01-07 15:54:16 -0800 |
---|---|---|
committer | Matt Turner <[email protected]> | 2016-01-13 10:35:12 -0800 |
commit | b85a229e1f542426b1c8000569d89cd4768b9339 (patch) | |
tree | a770a5444309a93cc7e574f95935e7a5a62016c9 /src/glsl/ir_constant_expression.cpp | |
parent | 92f177386954caced2e7ddca156917cf166f9c23 (diff) |
glsl: Delete the ir_binop_bfm and ir_triop_bfi opcodes.
TGSI doesn't use these - it just translates ir_quadop_bitfield_insert
directly. NIR can handle ir_quadop_bitfield_insert as well.
These opcodes were only used for i965, and with Jason's recent patches,
we can do this lowering in NIR (which also gains us SPIR-V handling).
So there's not much point to retaining this GLSL IR lowering code.
Signed-off-by: Kenneth Graunke <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
Reviewed-by: Iago Toral Quiroga <[email protected]>
Diffstat (limited to 'src/glsl/ir_constant_expression.cpp')
-rw-r--r-- | src/glsl/ir_constant_expression.cpp | 17 |
1 files changed, 0 insertions, 17 deletions
diff --git a/src/glsl/ir_constant_expression.cpp b/src/glsl/ir_constant_expression.cpp index f02e959bd18..38b6dd59759 100644 --- a/src/glsl/ir_constant_expression.cpp +++ b/src/glsl/ir_constant_expression.cpp @@ -1616,23 +1616,6 @@ ir_expression::constant_expression_value(struct hash_table *variable_context) break; } - case ir_binop_bfm: { - int bits = op[0]->value.i[0]; - int offset = op[1]->value.i[0]; - - for (unsigned c = 0; c < components; c++) { - if (bits == 0) - data.u[c] = op[0]->value.u[c]; - else if (offset < 0 || bits < 0) - data.u[c] = 0; /* Undefined for bitfieldInsert, per spec. */ - else if (offset + bits > 32) - data.u[c] = 0; /* Undefined for bitfieldInsert, per spec. */ - else - data.u[c] = ((1 << bits) - 1) << offset; - } - break; - } - case ir_binop_ldexp: for (unsigned c = 0; c < components; c++) { if (op[0]->type->base_type == GLSL_TYPE_DOUBLE) { |