Kaynağa Gözat

freedreno/ir3: lower mul_2x32_64

lower_mul_2x32_64 generates mul_high opcodes, and lower_mul_high is done by
nir_lower_alu, so call nir_lower_alu after nir_opt_algebraic.

Signed-off-by: Jonathan Marek <jonathan@marek.ca>
Reviewed-by: Eric Anholt <eric@anholt.net>
master
Jonathan Marek 6 yıl önce
ebeveyn
işleme
b936143327
1 değiştirilmiş dosya ile 3 ekleme ve 0 silme
  1. 3
    0
      src/freedreno/ir3/ir3_nir.c

+ 3
- 0
src/freedreno/ir3/ir3_nir.c Dosyayı Görüntüle

.lower_uadd_carry = true, .lower_uadd_carry = true,
.lower_usub_borrow = true, .lower_usub_borrow = true,
.lower_mul_high = true, .lower_mul_high = true,
.lower_mul_2x32_64 = true,
.fuse_ffma = true, .fuse_ffma = true,
.vertex_id_zero_based = true, .vertex_id_zero_based = true,
.lower_extract_byte = true, .lower_extract_byte = true,
.lower_uadd_carry = true, .lower_uadd_carry = true,
.lower_usub_borrow = true, .lower_usub_borrow = true,
.lower_mul_high = true, .lower_mul_high = true,
.lower_mul_2x32_64 = true,
.fuse_ffma = true, .fuse_ffma = true,
.vertex_id_zero_based = false, .vertex_id_zero_based = false,
.lower_extract_byte = true, .lower_extract_byte = true,
progress |= OPT(s, nir_opt_peephole_select, 16, true, true); progress |= OPT(s, nir_opt_peephole_select, 16, true, true);
progress |= OPT(s, nir_opt_intrinsics); progress |= OPT(s, nir_opt_intrinsics);
progress |= OPT(s, nir_opt_algebraic); progress |= OPT(s, nir_opt_algebraic);
progress |= OPT(s, nir_lower_alu);
progress |= OPT(s, nir_opt_constant_folding); progress |= OPT(s, nir_opt_constant_folding);


if (lower_flrp != 0) { if (lower_flrp != 0) {

Loading…
İptal
Kaydet