nir: rename f2f16_undef to f2f16

we need rounding modes on other conversions involving floats and it is easier
to rename f2f16_undef than renaming all the other ones.

v2: rebased on master

Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Acked-by: Rob Clark <robdclark@gmail.com>
Signed-off-by: Karol Herbst <kherbst@redhat.com>
This commit is contained in:
Karol Herbst
2018-04-26 21:06:08 +02:00
parent 2083cfb6eb
commit 7f95564a22
5 changed files with 11 additions and 11 deletions
+1 -1
View File
@@ -889,7 +889,7 @@ static void visit_alu(struct ac_nir_context *ctx, const nir_alu_instr *instr)
result = LLVMBuildExtractElement(ctx->ac.builder, result, ctx->ac.i32_0, "");
break;
case nir_op_f2f16_rtne:
case nir_op_f2f16_undef:
case nir_op_f2f16:
case nir_op_f2f32:
case nir_op_f2f64:
src[0] = ac_to_float(&ctx->ac, src[0]);
+2 -2
View File
@@ -181,9 +181,9 @@ for src_t in [tint, tuint, tfloat]:
bit_sizes = [8, 16, 32, 64]
for bit_size in bit_sizes:
if bit_size == 16 and dst_t == tfloat and src_t == tfloat:
rnd_modes = ['rtne', 'rtz', 'undef']
rnd_modes = ['_rtne', '_rtz', '']
for rnd_mode in rnd_modes:
unop_convert("{0}2{1}{2}_{3}".format(src_t[0], dst_t[0],
unop_convert("{0}2{1}{2}{3}".format(src_t[0], dst_t[0],
bit_size, rnd_mode),
dst_t + str(bit_size), src_t, "src0")
else:
+4 -4
View File
@@ -73,10 +73,10 @@ nir_type_conversion_op(nir_alu_type src, nir_alu_type dst, nir_rounding_mode rnd
case ${dst_bits}:
% if src_t == 'float' and dst_t == 'float' and dst_bits == 16:
switch(rnd) {
% for rnd_t in ['rtne', 'rtz', 'undef']:
case nir_rounding_mode_${rnd_t}:
return ${'nir_op_{0}2{1}{2}_{3}'.format(src_t[0], dst_t[0],
dst_bits, rnd_t)};
% for rnd_t in [('rtne', '_rtne'), ('rtz', '_rtz'), ('undef', '')]:
case nir_rounding_mode_${rnd_t[0]}:
return ${'nir_op_{0}2{1}{2}{3}'.format(src_t[0], dst_t[0],
dst_bits, rnd_t[1])};
% endfor
default:
unreachable("Invalid 16-bit nir rounding mode");
@@ -948,7 +948,7 @@ create_cov(struct ir3_context *ctx, struct ir3_instruction *src,
case nir_op_f2f32:
case nir_op_f2f16_rtne:
case nir_op_f2f16_rtz:
case nir_op_f2f16_undef:
case nir_op_f2f16:
case nir_op_f2i32:
case nir_op_f2i16:
case nir_op_f2i8:
@@ -1020,7 +1020,7 @@ create_cov(struct ir3_context *ctx, struct ir3_instruction *src,
case nir_op_f2f16_rtne:
case nir_op_f2f16_rtz:
case nir_op_f2f16_undef:
case nir_op_f2f16:
/* TODO how to handle rounding mode? */
case nir_op_i2f16:
case nir_op_u2f16:
@@ -1145,7 +1145,7 @@ emit_alu(struct ir3_context *ctx, nir_alu_instr *alu)
case nir_op_f2f32:
case nir_op_f2f16_rtne:
case nir_op_f2f16_rtz:
case nir_op_f2f16_undef:
case nir_op_f2f16:
case nir_op_f2i32:
case nir_op_f2i16:
case nir_op_f2i8:
+1 -1
View File
@@ -787,7 +787,7 @@ fs_visitor::nir_emit_alu(const fs_builder &bld, nir_alu_instr *instr)
* BRW_OPCODE_F32TO16 when/if we work for HF support on gen7.
*/
case nir_op_f2f16_undef:
case nir_op_f2f16:
inst = bld.MOV(result, op[0]);
inst->saturate = instr->dest.saturate;
break;