<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Apr 27, 2016 at 12:52 AM, Ian Romanick <span dir="ltr"><<a href="mailto:idr@freedesktop.org" target="_blank">idr@freedesktop.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Patches 1 and 3 through 6 are<br>
<br>
Reviewed-by: Ian Romanick <<a href="mailto:ian.d.romanick@intel.com">ian.d.romanick@intel.com</a>><br></blockquote><div><br></div><div>Thanks!<br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I'm sending out a comment on patch 2.<br>
<span class="im HOEnZb"><br>
On 04/27/2016 05:41 AM, Jason Ekstrand wrote:<br>
</span><div class="HOEnZb"><div class="h5">> I think things started out consistent when we first merged NIR since there<br>
> weren't a lot of helpers.  Over time, however, more nir_foreach helpers<br>
> have been added and they haven't had a consistent argument order.  This has<br>
> been annoying me for a while ("Which way does this one work again?") and<br>
> this little series fixes that problem once and for all.<br>
><br>
> With this series, all of the macros are of the form<br>
><br>
> nir_foreach_foo(foo, container)<br>
><br>
> which matches "for (x : container)" in C++11 or Java and "for x in<br>
> container" from python, shell, etc.  I think exec_list from the glsl<br>
> compiler also tries to follow this convention.<br>
><br>
> This series applies on top of Connor's series to rework nir_foreach_block<br>
><br>
> Jason Ekstrand (6):<br>
>   nir: Switch the arguments to nir_foreach_instr<br>
>   nir: Switch the arguments to nir_foreach_phi_src<br>
>   nir: Switch the arguments to nir_foreach_parallel_copy_entry<br>
>   nir: Switch the arguments to nir_foreach_function<br>
>   nir: Switch the arguments to nir_foreach_use and friends<br>
>   nir: Switch the arguments to nir_foreach_def<br>
><br>
>  src/compiler/nir/nir.c                             | 18 ++++++------<br>
>  src/compiler/nir/nir.h                             | 34 +++++++++++-----------<br>
>  src/compiler/nir/nir_algebraic.py                  |  4 +--<br>
>  src/compiler/nir/nir_clone.c                       |  4 +--<br>
>  src/compiler/nir/nir_control_flow.c                | 16 +++++-----<br>
>  src/compiler/nir/nir_dominance.c                   |  8 ++---<br>
>  src/compiler/nir/nir_from_ssa.c                    | 22 +++++++-------<br>
>  src/compiler/nir/nir_gather_info.c                 |  2 +-<br>
>  src/compiler/nir/nir_gs_count_vertices.c           |  4 +--<br>
>  src/compiler/nir/nir_inline_functions.c            |  8 ++---<br>
>  src/compiler/nir/nir_instr_set.c                   |  6 ++--<br>
>  src/compiler/nir/nir_liveness.c                    | 10 +++----<br>
>  src/compiler/nir/nir_lower_alu_to_scalar.c         |  4 +--<br>
>  src/compiler/nir/nir_lower_atomics.c               |  4 +--<br>
>  src/compiler/nir/nir_lower_clip.c                  |  8 ++---<br>
>  src/compiler/nir/nir_lower_double_packing.c        |  4 +--<br>
>  src/compiler/nir/nir_lower_global_vars_to_local.c  |  4 +--<br>
>  src/compiler/nir/nir_lower_gs_intrinsics.c         |  4 +--<br>
>  src/compiler/nir/nir_lower_idiv.c                  |  4 +--<br>
>  src/compiler/nir/nir_lower_indirect_derefs.c       |  4 +--<br>
>  src/compiler/nir/nir_lower_io.c                    |  4 +--<br>
>  src/compiler/nir/nir_lower_load_const_to_scalar.c  |  4 +--<br>
>  src/compiler/nir/nir_lower_locals_to_regs.c        |  4 +--<br>
>  .../nir/nir_lower_outputs_to_temporaries.c         |  4 +--<br>
>  src/compiler/nir/nir_lower_phis_to_scalar.c        | 10 +++----<br>
>  src/compiler/nir/nir_lower_returns.c               |  2 +-<br>
>  src/compiler/nir/nir_lower_samplers.c              |  4 +--<br>
>  src/compiler/nir/nir_lower_system_values.c         |  4 +--<br>
>  src/compiler/nir/nir_lower_tex.c                   |  4 +--<br>
>  src/compiler/nir/nir_lower_to_source_mods.c        |  8 ++---<br>
>  src/compiler/nir/nir_lower_two_sided_color.c       |  4 +--<br>
>  src/compiler/nir/nir_lower_var_copies.c            |  4 +--<br>
>  src/compiler/nir/nir_lower_vars_to_ssa.c           |  6 ++--<br>
>  src/compiler/nir/nir_lower_vec_to_movs.c           |  6 ++--<br>
>  src/compiler/nir/nir_metadata.c                    |  4 +--<br>
>  src/compiler/nir/nir_move_vec_src_uses_to_dest.c   |  6 ++--<br>
>  src/compiler/nir/nir_normalize_cubemap_coords.c    |  4 +--<br>
>  src/compiler/nir/nir_opt_constant_folding.c        |  4 +--<br>
>  src/compiler/nir/nir_opt_copy_propagate.c          |  4 +--<br>
>  src/compiler/nir/nir_opt_cse.c                     |  6 ++--<br>
>  src/compiler/nir/nir_opt_dce.c                     |  6 ++--<br>
>  src/compiler/nir/nir_opt_dead_cf.c                 | 10 +++----<br>
>  src/compiler/nir/nir_opt_gcm.c                     | 12 ++++----<br>
>  src/compiler/nir/nir_opt_global_to_local.c         |  6 ++--<br>
>  src/compiler/nir/nir_opt_peephole_select.c         | 14 ++++-----<br>
>  src/compiler/nir/nir_opt_remove_phis.c             |  6 ++--<br>
>  src/compiler/nir/nir_opt_undef.c                   |  4 +--<br>
>  src/compiler/nir/nir_print.c                       |  6 ++--<br>
>  src/compiler/nir/nir_remove_dead_variables.c       |  6 ++--<br>
>  src/compiler/nir/nir_repair_ssa.c                  |  8 ++---<br>
>  src/compiler/nir/nir_split_var_copies.c            |  4 +--<br>
>  src/compiler/nir/nir_sweep.c                       |  2 +-<br>
>  src/compiler/nir/nir_to_ssa.c                      | 12 ++++----<br>
>  src/compiler/nir/nir_validate.c                    | 18 ++++++------<br>
>  .../drivers/freedreno/ir3/ir3_compiler_nir.c       |  4 +--<br>
>  .../drivers/freedreno/ir3/ir3_nir_lower_if_else.c  | 12 ++++----<br>
>  src/gallium/drivers/vc4/vc4_nir_lower_blend.c      |  4 +--<br>
>  src/gallium/drivers/vc4/vc4_nir_lower_io.c         |  4 +--<br>
>  src/gallium/drivers/vc4/vc4_nir_lower_txf_ms.c     |  4 +--<br>
>  src/gallium/drivers/vc4/vc4_program.c              |  8 ++---<br>
>  src/intel/vulkan/anv_nir_apply_dynamic_offsets.c   |  4 +--<br>
>  src/intel/vulkan/anv_nir_apply_pipeline_layout.c   |  8 ++---<br>
>  src/intel/vulkan/anv_nir_lower_push_constants.c    |  4 +--<br>
>  src/mesa/drivers/dri/i965/brw_fs_nir.cpp           |  8 ++---<br>
>  src/mesa/drivers/dri/i965/brw_nir.c                | 20 ++++++-------<br>
>  .../dri/i965/brw_nir_analyze_boolean_resolves.c    |  4 +--<br>
>  .../dri/i965/brw_nir_attribute_workarounds.c       |  4 +--<br>
>  .../drivers/dri/i965/brw_nir_opt_peephole_ffma.c   |  6 ++--<br>
>  src/mesa/drivers/dri/i965/brw_vec4_nir.cpp         |  8 ++---<br>
>  69 files changed, 242 insertions(+), 242 deletions(-)<br>
><br>
<br>
</div></div></blockquote></div><br></div></div>