Re: [Mesa-dev] [RFCv3 05/11] nir: add lowering pass for y-transform

2016-02-02 Thread Connor Abbott
On Mon, Feb 1, 2016 at 11:48 AM, Rob Clark wrote: > On Mon, Feb 1, 2016 at 11:00 AM, Connor Abbott wrote: >> On Sun, Jan 31, 2016 at 3:16 PM, Rob Clark wrote: >>> From: Rob Clark >>> >>> Signed-off-by: Rob Clark >>> --- >>> src/com

Re: [Mesa-dev] [PATCH 08a/11] nir: clamp-color-output support

2016-02-02 Thread Connor Abbott
On Tue, Feb 2, 2016 at 1:07 PM, Rob Clark wrote: > From: Rob Clark > > Handled by tgsi_emulate for glsl->tgsi case. > > Signed-off-by: Rob Clark > --- > src/compiler/Makefile.sources| 1 + > src/compiler/nir/nir.h | 1 + > src/compiler/nir/nir_l

Re: [Mesa-dev] [PATCH 08b/11] nir: passthrough-edgeflags support

2016-02-02 Thread Connor Abbott
ock_index | > + nir_metadata_dominance); > +} > + > +void nir_lower_passthrough_edgeflags(nir_shader *shader) > +{ > + lower_state state = { > + .shader = shader, > + }; > + > + nir_foreach_function(shader, function) {

Re: [Mesa-dev] [PATCH 0/5] NIR vectorization

2016-02-02 Thread Connor Abbott
> good to push patch 1 and 2, that were reviewed but not pushed on master. > > BR Whoops, sorry! I've pushed 1 and 2. It seems like I never responded to Jason's comments :( so I'll go back and try to sort it out. > > On 15/11/15 03:59, Connor Abbott wrote

Re: [Mesa-dev] [PATCH] i965: Don't add barrier deps for FB write messages.

2016-02-08 Thread Connor Abbott
Reviewed-by: Connor Abbott FWIW, in this area, another place where we unnecessarily introduce dependencies between instructions is when multiple instructions write to different parts of a virtual register, for example when setting up message headers. Instead of tracking dependencies per-vgrf, we

Re: [Mesa-dev] [PATCH] nir: Remove the const_offset from nir_tex_instr

2016-02-09 Thread Connor Abbott
Did you make sure the other drivers and ttn don't use this? Assming that, Reviewed-by: Connor Abbott I really should get to your other series, but I've been busy with school stuff and whatnot and I've been too lazy -- sorry! On Tue, Feb 9, 2016 at 8:08 PM, Jason Ekstrand wrote:

Re: [Mesa-dev] [PATCH 27/29] nir/lower_to_source_mod: Skip unsafe operations

2016-03-31 Thread Connor Abbott
This seems a little ugly to me. Since these ops are just moving bits around, maybe we should just convert the float64 src/dest to uint64? We do this for other opcodes that just shuffle bits around. On Mon, Mar 21, 2016 at 8:06 AM, Samuel Iglesias Gonsálvez wrote: > From: Iago Toral Quiroga > > S

Re: [Mesa-dev] [PATCH 27/29] nir/lower_to_source_mod: Skip unsafe operations

2016-04-01 Thread Connor Abbott
On Fri, Apr 1, 2016 at 4:56 AM, Samuel Iglesias Gonsálvez wrote: > On 31/03/16 17:16, Connor Abbott wrote: >> This seems a little ugly to me. Since these ops are just moving bits >> around, maybe we should just convert the float64 src/dest to uint64? >> We do this for ot

Re: [Mesa-dev] [PATCH] i965: Make intel_get_param return an int

2016-04-12 Thread Connor Abbott
On Tue, Apr 12, 2016 at 11:39 AM, Jason Ekstrand wrote: > > On Apr 11, 2016 9:49 AM, "Ben Widawsky" wrote: >> >> This will fix the spurious error message: "Failed to query GPU >> properties." >> that was unintentionally added in cc01b63d730. >> >> This patch changes the function to return an int

Re: [Mesa-dev] [PATCH 12/13] nir: add pack_double_2x32_split_y opcode

2016-04-12 Thread Connor Abbott
I'm not sure I'm so comfortable with this. For one, this is the sort of thing the backend can (and should) do. Why should be be adding stuff at the NIR level to help the backend's copy propagation pass? And perhaps more importantly, why should we be adding stuff at the NIR level to workaround the l

[Mesa-dev] [PATCH 08/47] nir/nir: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir.c | 42 ++ 1 file changed, 14 insertions(+), 28 deletions(-) diff --git a/src/compiler/nir/nir.c b/src/compiler/nir/nir.c index ea8aa88..95d644a 100644 --- a/src/compiler/nir/nir.c +++ b/src/compiler

[Mesa-dev] [PATCH 15/47] nir/lower_phis_to_scalar: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_lower_phis_to_scalar.c | 9 + 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/compiler/nir/nir_lower_phis_to_scalar.c b/src/compiler/nir/nir_lower_phis_to_scalar.c index 026c866..38f3dda 100644 --- a/src/compiler

[Mesa-dev] [PATCH 06/47] nir/lower_alu_to_scalar: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_lower_alu_to_scalar.c | 18 ++ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/src/compiler/nir/nir_lower_alu_to_scalar.c b/src/compiler/nir/nir_lower_alu_to_scalar.c index e8ba640..f8e94c5 100644 --- a/src

[Mesa-dev] [PATCH 04/47] nir/inline_functions: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_inline_functions.c | 53 ++--- 1 file changed, 23 insertions(+), 30 deletions(-) diff --git a/src/compiler/nir/nir_inline_functions.c b/src/compiler/nir/nir_inline_functions.c index 4a08dcc..85f0ff4 100644 --- a

[Mesa-dev] [PATCH 30/47] nir/opt_gcm: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_opt_gcm.c | 9 + 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/compiler/nir/nir_opt_gcm.c b/src/compiler/nir/nir_opt_gcm.c index a8779ce..bfc8763 100644 --- a/src/compiler/nir/nir_opt_gcm.c +++ b/src/compiler/nir

[Mesa-dev] [PATCH 26/47] nir/lower_var_copies: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_lower_var_copies.c | 34 +++-- 1 file changed, 15 insertions(+), 19 deletions(-) diff --git a/src/compiler/nir/nir_lower_var_copies.c b/src/compiler/nir/nir_lower_var_copies.c index c994f0f..4feb54b 100644 --- a

[Mesa-dev] [PATCH 07/47] nir/lower_clip: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_lower_clip.c | 50 --- 1 file changed, 21 insertions(+), 29 deletions(-) diff --git a/src/compiler/nir/nir_lower_clip.c b/src/compiler/nir/nir_lower_clip.c index c711230..09a9022 100644 --- a/src/compiler

[Mesa-dev] [PATCH 38/47] nir/opt_peephole_select: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_opt_peephole_select.c | 37 +++--- 1 file changed, 14 insertions(+), 23 deletions(-) diff --git a/src/compiler/nir/nir_opt_peephole_select.c b/src/compiler/nir/nir_opt_peephole_select.c index bad9dc4..41df4e4 100644

[Mesa-dev] [PATCH 31/47] nir/opt_dce: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_opt_dce.c | 33 + 1 file changed, 13 insertions(+), 20 deletions(-) diff --git a/src/compiler/nir/nir_opt_dce.c b/src/compiler/nir/nir_opt_dce.c index 32436c1..f3da307 100644 --- a/src/compiler/nir

[Mesa-dev] [PATCH 01/47] nir: rewrite nir_foreach_block and friends

2016-04-12 Thread Connor Abbott
ly opt_select_peephole needs it. Signed-off-by: Connor Abbott --- src/compiler/nir/nir.c | 186 + src/compiler/nir/nir.h | 57 --- 2 files changed, 159 insertions(+), 84 deletions(-) diff --git a/src/compiler/nir/nir.c b/src/compiler

[Mesa-dev] [PATCH 14/47] nir/lower_indirect_derefs: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_lower_indirect_derefs.c | 39 1 file changed, 17 insertions(+), 22 deletions(-) diff --git a/src/compiler/nir/nir_lower_indirect_derefs.c b/src/compiler/nir/nir_lower_indirect_derefs.c index 62b8c84..e732986

[Mesa-dev] [PATCH 00/47] nir: rewrite nir_foreach_block() and friends

2016-04-12 Thread Connor Abbott
done, but I'd like to get it in as soon as possible to avoid rebase hell. Piglit tested on i965, but only compile tested on vc4 and freedreno. Finally, the series is also available at: git://people.freedesktop.org/~cwabbott0/mesa nir-foreach-block-rewrite Connor Abbott (47): nir: rewrit

[Mesa-dev] [PATCH 37/47] nir/phi_builder: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_phi_builder.c | 12 +++- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/src/compiler/nir/nir_phi_builder.c b/src/compiler/nir/nir_phi_builder.c index a39e360..9a96f84 100644 --- a/src/compiler/nir/nir_phi_builder.c

[Mesa-dev] [PATCH 19/47] nir/lower_outputs_to_temporaries: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- .../nir/nir_lower_outputs_to_temporaries.c | 28 ++ 1 file changed, 12 insertions(+), 16 deletions(-) diff --git a/src/compiler/nir/nir_lower_outputs_to_temporaries.c b/src/compiler/nir/nir_lower_outputs_to_temporaries.c index

[Mesa-dev] [PATCH 20/47] nir/lower_tex: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_lower_tex.c | 58 +++- 1 file changed, 28 insertions(+), 30 deletions(-) diff --git a/src/compiler/nir/nir_lower_tex.c b/src/compiler/nir/nir_lower_tex.c index 4999603..7eebd6b 100644 --- a/src/compiler

[Mesa-dev] [PATCH 24/47] nir/move_vec_src_uses_to_dest: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_move_vec_src_uses_to_dest.c | 7 +-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/compiler/nir/nir_move_vec_src_uses_to_dest.c b/src/compiler/nir/nir_move_vec_src_uses_to_dest.c index b5186e6..ccf1082 100644 --- a

[Mesa-dev] [PATCH 13/47] nir/nir_lower_global_vars: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_lower_global_vars_to_local.c | 38 ++- 1 file changed, 16 insertions(+), 22 deletions(-) diff --git a/src/compiler/nir/nir_lower_global_vars_to_local.c b/src/compiler/nir/nir_lower_global_vars_to_local.c index 7b4cd4e

[Mesa-dev] [PATCH 23/47] nir/lower_vars_to_ssa: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_lower_vars_to_ssa.c | 14 +- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/src/compiler/nir/nir_lower_vars_to_ssa.c b/src/compiler/nir/nir_lower_vars_to_ssa.c index 9f9e454..4967837 100644 --- a/src/compiler/nir

[Mesa-dev] [PATCH 47/47] vc4: fixup for new nir_foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/gallium/drivers/vc4/vc4_nir_lower_blend.c | 9 - src/gallium/drivers/vc4/vc4_nir_lower_io.c | 20 +--- src/gallium/drivers/vc4/vc4_nir_lower_txf_ms.c | 24 +++- src/gallium/drivers/vc4/vc4_program.c

[Mesa-dev] [PATCH 44/47] nir/algebraic: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_algebraic.py | 34 ++ 1 file changed, 14 insertions(+), 20 deletions(-) diff --git a/src/compiler/nir/nir_algebraic.py b/src/compiler/nir/nir_algebraic.py index d05564f..ef07505 100644 --- a/src/compiler/nir

[Mesa-dev] [PATCH 02/47] nir/dominance: update to new foreach_block

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_dominance.c | 160 +++ 1 file changed, 59 insertions(+), 101 deletions(-) diff --git a/src/compiler/nir/nir_dominance.c b/src/compiler/nir/nir_dominance.c index d95f396..6b5e2c1 100644 --- a/src/compiler

[Mesa-dev] [PATCH 46/47] ir3: fixup for new nir_foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- .../drivers/freedreno/ir3/ir3_nir_lower_if_else.c | 51 +- 1 file changed, 21 insertions(+), 30 deletions(-) diff --git a/src/gallium/drivers/freedreno/ir3/ir3_nir_lower_if_else.c b/src/gallium/drivers/freedreno/ir3/ir3_nir_lower_if_else.c

[Mesa-dev] [PATCH 34/47] nir/opt_remove_phis: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_opt_remove_phis.c | 12 +++- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/compiler/nir/nir_opt_remove_phis.c b/src/compiler/nir/nir_opt_remove_phis.c index 6461837..4158ee4 100644 --- a/src/compiler/nir

[Mesa-dev] [PATCH 25/47] nir/lower_two_sided_color: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_lower_two_sided_color.c | 8 +--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/compiler/nir/nir_lower_two_sided_color.c b/src/compiler/nir/nir_lower_two_sided_color.c index c7fb67e..6494b5f 100644 --- a/src/compiler

[Mesa-dev] [PATCH 16/47] nir/lower_system_values: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_lower_system_values.c | 27 +++ 1 file changed, 11 insertions(+), 16 deletions(-) diff --git a/src/compiler/nir/nir_lower_system_values.c b/src/compiler/nir/nir_lower_system_values.c index 2bd787d..77cc2a4d 100644

[Mesa-dev] [PATCH 17/47] nir/lower_io: adapt to new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_lower_io.c | 9 + 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/compiler/nir/nir_lower_io.c b/src/compiler/nir/nir_lower_io.c index d9af8bf..ef6a6ae 100644 --- a/src/compiler/nir/nir_lower_io.c +++ b/src/compiler

[Mesa-dev] [PATCH 03/47] nir/from_ssa: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_from_ssa.c | 57 ++--- 1 file changed, 30 insertions(+), 27 deletions(-) diff --git a/src/compiler/nir/nir_from_ssa.c b/src/compiler/nir/nir_from_ssa.c index 82317c2..7b27fda 100644 --- a/src/compiler/nir

[Mesa-dev] [PATCH 33/47] nir/opt_undef: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_opt_undef.c | 23 --- 1 file changed, 8 insertions(+), 15 deletions(-) diff --git a/src/compiler/nir/nir_opt_undef.c b/src/compiler/nir/nir_opt_undef.c index 374564d..3ceb120 100644 --- a/src/compiler/nir/nir_opt_undef.c

[Mesa-dev] [PATCH 43/47] nir/validate: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_validate.c | 14 -- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/src/compiler/nir/nir_validate.c b/src/compiler/nir/nir_validate.c index 9f18d1c..af126f8 100644 --- a/src/compiler/nir/nir_validate.c +++ b/src

[Mesa-dev] [PATCH 05/47] nir/liveness: adapt to new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_liveness.c | 24 ++-- 1 file changed, 10 insertions(+), 14 deletions(-) diff --git a/src/compiler/nir/nir_liveness.c b/src/compiler/nir/nir_liveness.c index 05f79d7..7952751 100644 --- a/src/compiler/nir/nir_liveness.c

[Mesa-dev] [PATCH 18/47] nir/lower_to_source_mods: fixup for new foreeach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_lower_to_source_mods.c | 15 ++- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/src/compiler/nir/nir_lower_to_source_mods.c b/src/compiler/nir/nir_lower_to_source_mods.c index 6c4e1f0..eafab4e 100644 --- a/src

[Mesa-dev] [PATCH 35/47] nir/opt_cp: use nir_block_get_following_if()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_opt_copy_propagate.c | 12 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/src/compiler/nir/nir_opt_copy_propagate.c b/src/compiler/nir/nir_opt_copy_propagate.c index d99f78d..c1a84c2 100644 --- a/src/compiler/nir

[Mesa-dev] [PATCH 29/47] nir/opt_constant_folding: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_opt_constant_folding.c | 29 ++--- 1 file changed, 14 insertions(+), 15 deletions(-) diff --git a/src/compiler/nir/nir_opt_constant_folding.c b/src/compiler/nir/nir_opt_constant_folding.c index e64ca36..983034b

[Mesa-dev] [PATCH 11/47] nir/lower_load_const: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_lower_load_const_to_scalar.c | 18 ++ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/src/compiler/nir/nir_lower_load_const_to_scalar.c b/src/compiler/nir/nir_lower_load_const_to_scalar.c index b5df464..feb5dfb

[Mesa-dev] [PATCH 27/47] nir/normalize_cubemap_coords: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_normalize_cubemap_coords.c | 26 +++-- 1 file changed, 11 insertions(+), 15 deletions(-) diff --git a/src/compiler/nir/nir_normalize_cubemap_coords.c b/src/compiler/nir/nir_normalize_cubemap_coords.c index 9c15eb8

[Mesa-dev] [PATCH 10/47] nir/lower_locals_to_regs: fixup for new foreach_block

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_lower_locals_to_regs.c | 9 + 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/compiler/nir/nir_lower_locals_to_regs.c b/src/compiler/nir/nir_lower_locals_to_regs.c index 0438802..270e9fe 100644 --- a/src/compiler

[Mesa-dev] [PATCH 36/47] nir/opt_cp: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_opt_copy_propagate.c | 28 ++-- 1 file changed, 10 insertions(+), 18 deletions(-) diff --git a/src/compiler/nir/nir_opt_copy_propagate.c b/src/compiler/nir/nir_opt_copy_propagate.c index c1a84c2..782a198 100644 --- a

[Mesa-dev] [PATCH 12/47] nir/lower_atomics: fixup for new foreach_block(

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_lower_atomics.c | 36 +++- 1 file changed, 11 insertions(+), 25 deletions(-) diff --git a/src/compiler/nir/nir_lower_atomics.c b/src/compiler/nir/nir_lower_atomics.c index 70381a7..9079273 100644 --- a/src

[Mesa-dev] [PATCH 09/47] nir/lower_gs_intrinsics: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_lower_gs_intrinsics.c | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/compiler/nir/nir_lower_gs_intrinsics.c b/src/compiler/nir/nir_lower_gs_intrinsics.c index 14abfe3..68eec5d 100644 --- a/src/compiler/nir

[Mesa-dev] [PATCH 21/47] nir/lower_idiv: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_lower_idiv.c | 21 +++-- 1 file changed, 7 insertions(+), 14 deletions(-) diff --git a/src/compiler/nir/nir_lower_idiv.c b/src/compiler/nir/nir_lower_idiv.c index a084ad9..a56b1f5 100644 --- a/src/compiler/nir

[Mesa-dev] [PATCH 22/47] nir/lower_vec_to_movs: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_lower_vec_to_movs.c | 24 ++-- 1 file changed, 10 insertions(+), 14 deletions(-) diff --git a/src/compiler/nir/nir_lower_vec_to_movs.c b/src/compiler/nir/nir_lower_vec_to_movs.c index f51cede..dc90f35 100644 --- a/src

[Mesa-dev] [PATCH 42/47] nir/nir_worklist: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_worklist.c | 12 +++- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/src/compiler/nir/nir_worklist.c b/src/compiler/nir/nir_worklist.c index 3087a1d..48aab77 100644 --- a/src/compiler/nir/nir_worklist.c +++ b/src

[Mesa-dev] [PATCH 40/47] nir/split_var_copies: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_split_var_copies.c | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/compiler/nir/nir_split_var_copies.c b/src/compiler/nir/nir_split_var_copies.c index 6fdaefa..09c37c0 100644 --- a/src/compiler/nir

Re: [Mesa-dev] [PATCH 35/47] nir/opt_cp: use nir_block_get_following_if()

2016-04-12 Thread Connor Abbott
Sorry, this should be a separate fixup before the first patch. I've fixed this locally. On Wed, Apr 13, 2016 at 12:35 AM, Connor Abbott wrote: > Signed-off-by: Connor Abbott > --- > src/compiler/nir/nir_opt_copy_propagate.c | 12 > 1 file changed, 4 insertion

[Mesa-dev] [PATCH 45/47] i965/nir: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/mesa/drivers/dri/i965/brw_fs_nir.cpp | 7 +- src/mesa/drivers/dri/i965/brw_nir.c| 90 ++ .../dri/i965/brw_nir_analyze_boolean_resolves.c| 6 +- .../dri/i965/brw_nir_attribute_workarounds.c | 7

[Mesa-dev] [PATCH 41/47] nir/remove_dead_variables: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_remove_dead_variables.c | 48 1 file changed, 20 insertions(+), 28 deletions(-) diff --git a/src/compiler/nir/nir_remove_dead_variables.c b/src/compiler/nir/nir_remove_dead_variables.c index 6519268..4f03cbd

[Mesa-dev] [PATCH 28/47] nir/lower_samplers: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_lower_samplers.c | 40 ++- 1 file changed, 11 insertions(+), 29 deletions(-) diff --git a/src/compiler/nir/nir_lower_samplers.c b/src/compiler/nir/nir_lower_samplers.c index f5d3e59..457fd01 100644 --- a/src

[Mesa-dev] [PATCH 32/47] nir/opt_dead_cf: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_opt_dead_cf.c | 43 +++--- 1 file changed, 21 insertions(+), 22 deletions(-) diff --git a/src/compiler/nir/nir_opt_dead_cf.c b/src/compiler/nir/nir_opt_dead_cf.c index 4658b23..169d3d7 100644 --- a/src

[Mesa-dev] [PATCH 39/47] nir/repair_ssa: fixup for new foreach_block()

2016-04-12 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/compiler/nir/nir_repair_ssa.c | 16 +--- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/src/compiler/nir/nir_repair_ssa.c b/src/compiler/nir/nir_repair_ssa.c index 96c791c..f11d458 100644 --- a/src/compiler/nir/nir_repair_ssa.c

Re: [Mesa-dev] [PATCH 12/13] nir: add pack_double_2x32_split_y opcode

2016-04-13 Thread Connor Abbott
On Wed, Apr 13, 2016 at 3:24 AM, Iago Toral wrote: > On Tue, 2016-04-12 at 13:16 -0400, Connor Abbott wrote: >> I'm not sure I'm so comfortable with this. For one, this is the sort >> of thing the backend can (and should) do. Why should be be adding >> stuff at the

Re: [Mesa-dev] [PATCH 01/47] nir: rewrite nir_foreach_block and friends

2016-04-13 Thread Connor Abbott
On Wed, Apr 13, 2016 at 11:15 AM, Jason Ekstrand wrote: > > On Apr 13, 2016 4:57 AM, "Rob Clark" wrote: >> [...] >> >> so, I like the new iterator macros, but this is one giant massive >> unbisectable flag-day change :-( >> >> I'd prefer an approach that kept the old fxns implemented in terms of

Re: [Mesa-dev] [PATCH 01/47] nir: rewrite nir_foreach_block and friends

2016-04-13 Thread Connor Abbott
On Wed, Apr 13, 2016 at 2:49 PM, Jason Ekstrand wrote: > > > On Wed, Apr 13, 2016 at 8:15 AM, Jason Ekstrand > wrote: >> >> >> On Apr 13, 2016 4:57 AM, "Rob Clark" wrote: >> > >> > On Wed, Apr 13, 2016 at 12:34 AM, Connor Abbott >&g

Re: [Mesa-dev] [PATCH 01/47] nir: rewrite nir_foreach_block and friends

2016-04-13 Thread Connor Abbott
On Wed, Apr 13, 2016 at 3:20 PM, Jason Ekstrand wrote: > > > On Wed, Apr 13, 2016 at 12:15 PM, Connor Abbott wrote: >> >> On Wed, Apr 13, 2016 at 2:49 PM, Jason Ekstrand >> wrote: >> > >> > >> > On Wed, Apr 13, 2016 at 8:15 AM, Jason Ekstra

Re: [Mesa-dev] [PATCH] nir: add lowering pass for glBitmap

2016-04-14 Thread Connor Abbott
On Thu, Apr 14, 2016 at 6:10 PM, Rob Clark wrote: > From: Rob Clark > > Signed-off-by: Rob Clark > Reviewed-by: Connor Abbott > --- > src/compiler/Makefile.sources | 1 + > src/compiler/nir/nir.h | 7 ++ > src/compiler/nir/

Re: [Mesa-dev] [PATCH] nir: add lowering pass for glBitmap

2016-04-14 Thread Connor Abbott
This looks much better :) both patches LGTM. On Thu, Apr 14, 2016 at 6:44 PM, Rob Clark wrote: > From: Rob Clark > > Signed-off-by: Rob Clark > Reviewed-by: Connor Abbott > --- > src/compiler/Makefile.sources | 1 + > src/compiler/nir/nir.h | 7 +

Re: [Mesa-dev] [PATCH 01/47] nir: rewrite nir_foreach_block and friends

2016-04-14 Thread Connor Abbott
On Wed, Apr 13, 2016 at 7:45 PM, Jason Ekstrand wrote: > > > On Wed, Apr 13, 2016 at 2:06 PM, Connor Abbott wrote: >> >> On Wed, Apr 13, 2016 at 3:20 PM, Jason Ekstrand >> wrote: >> > >> > >> > On Wed, Apr 13, 2016 at 12:15 PM, Connor Abbott

Re: [Mesa-dev] [PATCH 04/13] nir: add a pass to lower some double operations

2016-04-19 Thread Connor Abbott
On Tue, Apr 12, 2016 at 4:05 AM, Samuel Iglesias Gonsálvez wrote: > From: Connor Abbott > > v2: Move to compiler/nir (Iago) > > Signed-off-by: Iago Toral Quiroga > --- > src/compiler/Makefile.sources | 1 + > src/compiler/nir/nir.h |

Re: [Mesa-dev] [PATCH] nir: add helper to get # of dest components

2015-04-27 Thread Connor Abbott
When you push this, can you make sure there are users for it so it isn't just dead code? Either in your driver, or there are probably several places in core NIR where we currently open-code this. Otherwise, Reviewed-by: Connor Abbott On Mon, Apr 27, 2015 at 3:05 PM, Rob Clark wrote: &

Re: [Mesa-dev] [RFC 7/9] nir/nir: Use a linked list instead of a has set for use/def sets

2015-04-27 Thread Connor Abbott
On Fri, Apr 24, 2015 at 7:32 PM, Jason Ekstrand wrote: > This commit switches us from the current setup of using hash sets for > use/def sets to using linked lists. Doing so should save us quite a bit of > memory because we aren't carrying around 3 hash sets per register and 2 per > SSA value. I

Re: [Mesa-dev] [RFC 7/9] nir/nir: Use a linked list instead of a has set for use/def sets

2015-04-27 Thread Connor Abbott
On Mon, Apr 27, 2015 at 5:25 PM, Jason Ekstrand wrote: > On Mon, Apr 27, 2015 at 1:35 PM, Connor Abbott wrote: >> On Fri, Apr 24, 2015 at 7:32 PM, Jason Ekstrand wrote: >>> +struct nir_if; >>> + >>> typedef struct nir_src { >>> union { >>

Re: [Mesa-dev] [PATCH 11/13] nir/nir: Use a linked list instead of a has set for use/def sets

2015-04-30 Thread Connor Abbott
On Tue, Apr 28, 2015 at 12:03 AM, Jason Ekstrand wrote: > This commit switches us from the current setup of using hash sets for > use/def sets to using linked lists. Doing so should save us quite a bit of > memory because we aren't carrying around 3 hash sets per register and 2 per > SSA value.

Re: [Mesa-dev] [PATCH 11/13] nir/nir: Use a linked list instead of a has set for use/def sets

2015-04-30 Thread Connor Abbott
>> > typedef struct nir_src { >> > union { >> > + nir_instr *parent_instr; >> > + struct nir_if *parent_if; >> > + }; >> > + >> > + struct list_head use_link; >> >> So I was thinking about this, and I realized that putting the list >> link here would mean that having SSA-only sou

Re: [Mesa-dev] [PATCH 01/13] nir/validate: Validate SSA def parent instructiosn

2015-05-05 Thread Connor Abbott
Typo in the subject line. On Tue, Apr 28, 2015 at 12:03 AM, Jason Ekstrand wrote: > --- > src/glsl/nir/nir_validate.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/src/glsl/nir/nir_validate.c b/src/glsl/nir/nir_validate.c > index a7aa798..35a853d 100644 > --- a/src/glsl/nir/nir_vali

Re: [Mesa-dev] [PATCH 13/13] SQUASH: nir: Update various components for the new list-based use/def sets

2015-05-07 Thread Connor Abbott
On Tue, Apr 28, 2015 at 12:03 AM, Jason Ekstrand wrote: > --- > src/glsl/nir/nir_from_ssa.c | 11 +-- > src/glsl/nir/nir_lower_locals_to_regs.c | 14 ++ > src/glsl/nir/nir_lower_to_source_mods.c | 20 > src/glsl/nir/nir_lower_vars_to_ssa.c|

Re: [Mesa-dev] [PATCH 11/13] nir/nir: Use a linked list instead of a has set for use/def sets

2015-05-07 Thread Connor Abbott
Based on the testing you did, it sounds like switching to linked lists gives us some pretty good performance gains, but before we go ahead with this you should collect some numbers using http://anholt.net/compare-perf/ and put them on this commit message. Comparing list vs. no-list as well as NIR v

Re: [Mesa-dev] [PATCH 01/13] nir/validate: Validate SSA def parent instructiosn

2015-05-07 Thread Connor Abbott
I can't seem to find the cover email, so I'll respond to this one. Aside from my comments on patches 11 and 13, patches 1-5 and 11-13 are Reviewed-by: Connor Abbott and FWIW 6-10 are Acked-by: Connor Abbott although what's important there are other people testing those and

Re: [Mesa-dev] [PATCH 4/5] nir: Translate image load, store and atomic intrinsics from GLSL IR.

2015-05-07 Thread Connor Abbott
On Tue, May 5, 2015 at 4:29 PM, Francisco Jerez wrote: > --- > src/glsl/nir/glsl_to_nir.cpp | 125 > +++ > 1 file changed, 114 insertions(+), 11 deletions(-) > > diff --git a/src/glsl/nir/glsl_to_nir.cpp b/src/glsl/nir/glsl_to_nir.cpp > index f6b8331..a01a

Re: [Mesa-dev] [PATCH 1/5] nir: Define image load, store and atomic intrinsics.

2015-05-07 Thread Connor Abbott
ses the pointer. I don't have a preference one way or the other, and I guess we could always refactor it later if we wanted to, so assuming Ken is OK with this, then besides one minor comment on patch 4 the series is Reviewed-by: Connor Abbott On Tue, May 5, 2015 at 4:29 PM, Francisco Jerez

Re: [Mesa-dev] [PATCH 4/5] nir: Translate image load, store and atomic intrinsics from GLSL IR.

2015-05-08 Thread Connor Abbott
On Fri, May 8, 2015 at 10:30 AM, Francisco Jerez wrote: > Connor Abbott writes: > >> On Tue, May 5, 2015 at 4:29 PM, Francisco Jerez >> wrote: >>> --- >>> src/glsl/nir/glsl_to_nir.cpp | 125 >>> +++ >>

Re: [Mesa-dev] [PATCH] nir/search: handle explicitly sized sources in match_value

2015-05-08 Thread Connor Abbott
Makes sense. Reviewed-by: Connor Abbott On Fri, May 8, 2015 at 11:38 AM, Jason Ekstrand wrote: > Previously, this case was being handled in match_expression prior to > calling match_value. However, there is really no good reason for this > given that match_value has all of the infor

Re: [Mesa-dev] [PATCHv2 4/5] nir: Translate image load, store and atomic intrinsics from GLSL IR.

2015-05-08 Thread Connor Abbott
Update the comment in patch 1, and the entire thing is Reviewed-by: Connor Abbott On Fri, May 8, 2015 at 12:40 PM, Francisco Jerez wrote: > v2: Undefine coordinate components not applicable to the target. > > --- > src/glsl/nir/glsl_to_n

Re: [Mesa-dev] [PATCH] nir/search: Save/restore the variables_seen bitmask when matching

2015-05-08 Thread Connor Abbott
restore it prior to matching in the commutative case below. */ Puth the */ on the next line, and this is Reviewed-by: Connor Abbott > + unsigned variables_seen_stash = state->variables_seen; > + > bool matched = true; > for (unsigned i = 0; i < nir_op_infos[instr-&

Re: [Mesa-dev] [PATCH] nir/search: Assert that variable id's are in range

2015-05-08 Thread Connor Abbott
Reviewed-by: Connor Abbott On Fri, May 8, 2015 at 3:13 PM, Jason Ekstrand wrote: > --- > src/glsl/nir/nir_search.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/src/glsl/nir/nir_search.c b/src/glsl/nir/nir_search.c > index 5ba0160..d86655b 100644 > --- a/src/

[Mesa-dev] [PATCH 4/9] nir/validate: validate successors at the end of a loop

2015-05-08 Thread Connor Abbott
I found this useful while debugging some control flow bugs while working on the dead control flow pass. Signed-off-by: Connor Abbott --- src/glsl/nir/nir_validate.c | 21 + 1 file changed, 21 insertions(+) diff --git a/src/glsl/nir/nir_validate.c b/src/glsl/nir

[Mesa-dev] [PATCH 7/9] nir: add a helper for iterating over blocks in a cf node

2015-05-08 Thread Connor Abbott
We were already doing this internally for iterating over a function implementation, so just expose it directly. Signed-off-by: Connor Abbott --- src/glsl/nir/nir.c | 7 +++ src/glsl/nir/nir.h | 2 ++ 2 files changed, 9 insertions(+) diff --git a/src/glsl/nir/nir.c b/src/glsl/nir/nir.c

[Mesa-dev] [PATCH 0/9] NIR dead control-flow removal

2015-05-08 Thread Connor Abbott
hat the changes required were pretty minimal. The series is also available at: git://people.freedesktop.org/~cwabbott0/mesa nir-dead-cf-v3 Connor Abbott (9): nir/vars_to_ssa: don't rewrite removed instructions nir: insert ssa_undef instructions when cleanup up defs/uses nir: add

[Mesa-dev] [PATCH 1/9] nir/vars_to_ssa: don't rewrite removed instructions

2015-05-08 Thread Connor Abbott
We were rewriting the uses of the intrinsic instruction to point to something else after removing it, which only happened to work since we were lax about having dangling uses when removing instructions. Fix that up. Signed-off-by: Connor Abbott --- src/glsl/nir/nir_lower_vars_to_ssa.c | 3

[Mesa-dev] [PATCH 2/9] nir: insert ssa_undef instructions when cleanup up defs/uses

2015-05-08 Thread Connor Abbott
e. In that case, the value that any uses get is undefined since the instruction never actually executes, so we can just replace the instruction with an ssa_undef_instr. Signed-off-by: Connor Abbott --- src/glsl/nir/nir.c | 47 ++- 1 file changed, 34 inser

[Mesa-dev] [PATCH 9/9] i965/fs/nir: enable the dead control flow optimization

2015-05-08 Thread Connor Abbott
Doesn't do anything on the public shader-db. Signed-off-by: Connor Abbott --- src/glsl/Makefile.sources | 1 + src/mesa/drivers/dri/i965/brw_nir.c | 2 ++ 2 files changed, 3 insertions(+) diff --git a/src/glsl/Makefile.sources b/src/glsl/Makefile.sources index d784a81..7bdd895 1

[Mesa-dev] [PATCH 6/9] nir: add nir_block_get_following_loop() helper

2015-05-08 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/glsl/nir/nir.c | 16 src/glsl/nir/nir.h | 2 ++ 2 files changed, 18 insertions(+) diff --git a/src/glsl/nir/nir.c b/src/glsl/nir/nir.c index efc3f01..e3c37dd 100644 --- a/src/glsl/nir/nir.c +++ b/src/glsl/nir/nir.c @@ -2097,6 +2097,22

[Mesa-dev] [PATCH 8/9] nir/dead_cf: add support for removing useless loops

2015-05-08 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/glsl/nir/nir_opt_dead_cf.c | 96 -- 1 file changed, 84 insertions(+), 12 deletions(-) diff --git a/src/glsl/nir/nir_opt_dead_cf.c b/src/glsl/nir/nir_opt_dead_cf.c index 17eadbd..f96bf63 100644 --- a/src/glsl/nir

[Mesa-dev] [PATCH 3/9] nir: add an optimization for removing dead control flow

2015-05-08 Thread Connor Abbott
) that I'd rather not expose publically. Signed-off-by: Connor Abbott --- src/glsl/nir/nir.c | 26 +++ src/glsl/nir/nir.h | 8 +++ src/glsl/nir/nir_opt_dead_cf.c | 150 + 3 files changed, 184 insertions(+) create mode 1006

[Mesa-dev] [PATCH 5/9] nir/dead_cf: delete code that's unreachable due to jumps

2015-05-08 Thread Connor Abbott
Signed-off-by: Connor Abbott --- src/glsl/nir/nir_opt_dead_cf.c | 126 ++--- 1 file changed, 118 insertions(+), 8 deletions(-) diff --git a/src/glsl/nir/nir_opt_dead_cf.c b/src/glsl/nir/nir_opt_dead_cf.c index 3fbb794..17eadbd 100644 --- a/src/glsl/nir

Re: [Mesa-dev] [PATCH 2/9] nir: insert ssa_undef instructions when cleanup up defs/uses

2015-05-08 Thread Connor Abbott
On Sat, May 9, 2015 at 1:52 AM, Jason Ekstrand wrote: > On Fri, May 8, 2015 at 10:03 PM, Connor Abbott wrote: >> The point of cleanup_defs_uses() is to make an instruction safe to >> remove by removing any references that the rest of the shader may have >> to it. Previo

Re: [Mesa-dev] [PATCH 2/2] nir: Get rid of the array elements parameter on load/store intrinsics

2015-05-19 Thread Connor Abbott
(load_##name, extra_srcs, ARR(1), true, 0, 0, 2, flags) \ > + INTRINSIC(load_##name, extra_srcs, ARR(1), true, 0, 0, 1, flags) \ > INTRINSIC(load_##name##_indirect, extra_srcs + 1, ARR(1, 1), \ > - true, 0, 0, 2, flags) > + true, 0, 0, 1, flags) > > LOAD(u

[Mesa-dev] [PATCH v2 03/14] nir: cleanup cf nodes earlier in nir_cf_node_remove()

2015-05-21 Thread Connor Abbott
from previous commit Signed-off-by: Connor Abbott --- src/glsl/nir/nir.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/glsl/nir/nir.c b/src/glsl/nir/nir.c index 704553f..a2b5e7c 100644 --- a/src/glsl/nir/nir.c +++ b/src/glsl/nir/nir.c @@ -1253,6 +1253,8 @@ nir_cf_node_r

[Mesa-dev] [PATCH v2 07/14] nir/validate: validate successors at the end of a loop

2015-05-21 Thread Connor Abbott
I found this useful while debugging some control flow bugs while working on the dead control flow pass. Signed-off-by: Connor Abbott --- src/glsl/nir/nir_validate.c | 21 + 1 file changed, 21 insertions(+) diff --git a/src/glsl/nir/nir_validate.c b/src/glsl/nir

[Mesa-dev] [PATCH v2 00/14] NIR dead control-flow removal

2015-05-21 Thread Connor Abbott
ader-db doesn't crash with this series (including the last patch), and manually tested some of the tricker cases, although it would be a good idea to run the entire thing through the private shader-db too. This series is also available at git://people.freedesktop.org/~cwabbott0/mesa nir-dead-

[Mesa-dev] [PATCH v2 01/14] nir/vars_to_ssa: don't rewrite removed instructions

2015-05-21 Thread Connor Abbott
We were rewriting the uses of the intrinsic instruction to point to something else after removing it, which only happened to work since we were lax about having dangling uses when removing instructions. Fix that up. Signed-off-by: Connor Abbott --- src/glsl/nir/nir_lower_vars_to_ssa.c | 3

[Mesa-dev] [PATCH v2 06/14] nir: add nir_cf_node_remove_after()

2015-05-21 Thread Connor Abbott
This will be used in deleting unreachable control flow. Signed-off-by: Connor Abbott --- src/glsl/nir/nir.c | 45 + src/glsl/nir/nir.h | 3 +++ 2 files changed, 48 insertions(+) diff --git a/src/glsl/nir/nir.c b/src/glsl/nir/nir.c index bd4f6cc

<    2   3   4   5   6   7   8   9   10   11   >