nir: Get rid of function overloads
authorJason Ekstrand <jason.ekstrand@intel.com>
Sat, 26 Dec 2015 18:00:47 +0000 (10:00 -0800)
committerJason Ekstrand <jason.ekstrand@intel.com>
Mon, 28 Dec 2015 17:59:53 +0000 (09:59 -0800)
commit237f2f2d8b45d9d956102eec6f9be63193e5269b
tree1b092bc0121132385b14f3a7ca6c9e7898fd365f
parent109c348284843054f708f4403260739b7db18275
nir: Get rid of function overloads

When Connor originally drafted NIR, he copied the same function+overload
system that GLSL IR had with a few names changed.  However, this
double-indirection is not really needed and has only served to confuse
people.  Instead, let's just have functions which may not have unique names
and may or may not have an implementation.  If someone wants to do overload
resolving, they can hav a hash table based function+overload system in the
overload resolving pass.  There's no good reason to keep it in core NIR.

Reviewed-by: Connor Abbott <cwabbott0@gmail.com>
Acked-by: Kenneth Graunke <kenneth@whitecape.org>
ir3 bits are

Reviewed-by: Rob Clark <robclark@gmail.com>
59 files changed:
src/gallium/auxiliary/nir/tgsi_to_nir.c
src/gallium/drivers/freedreno/ir3/ir3_compiler_nir.c
src/gallium/drivers/freedreno/ir3/ir3_nir_lower_if_else.c
src/gallium/drivers/vc4/vc4_nir_lower_blend.c
src/gallium/drivers/vc4/vc4_nir_lower_io.c
src/gallium/drivers/vc4/vc4_nir_lower_txf_ms.c
src/gallium/drivers/vc4/vc4_program.c
src/glsl/nir/glsl_to_nir.cpp
src/glsl/nir/nir.c
src/glsl/nir/nir.h
src/glsl/nir/nir_algebraic.py
src/glsl/nir/nir_builder.h
src/glsl/nir/nir_clone.c
src/glsl/nir/nir_dominance.c
src/glsl/nir/nir_from_ssa.c
src/glsl/nir/nir_gs_count_vertices.c
src/glsl/nir/nir_lower_alu_to_scalar.c
src/glsl/nir/nir_lower_atomics.c
src/glsl/nir/nir_lower_clip.c
src/glsl/nir/nir_lower_global_vars_to_local.c
src/glsl/nir/nir_lower_gs_intrinsics.c
src/glsl/nir/nir_lower_idiv.c
src/glsl/nir/nir_lower_io.c
src/glsl/nir/nir_lower_load_const_to_scalar.c
src/glsl/nir/nir_lower_locals_to_regs.c
src/glsl/nir/nir_lower_outputs_to_temporaries.c
src/glsl/nir/nir_lower_phis_to_scalar.c
src/glsl/nir/nir_lower_samplers.c
src/glsl/nir/nir_lower_system_values.c
src/glsl/nir/nir_lower_tex.c
src/glsl/nir/nir_lower_to_source_mods.c
src/glsl/nir/nir_lower_two_sided_color.c
src/glsl/nir/nir_lower_var_copies.c
src/glsl/nir/nir_lower_vars_to_ssa.c
src/glsl/nir/nir_lower_vec_to_movs.c
src/glsl/nir/nir_metadata.c
src/glsl/nir/nir_move_vec_src_uses_to_dest.c
src/glsl/nir/nir_normalize_cubemap_coords.c
src/glsl/nir/nir_opt_constant_folding.c
src/glsl/nir/nir_opt_copy_propagate.c
src/glsl/nir/nir_opt_cse.c
src/glsl/nir/nir_opt_dce.c
src/glsl/nir/nir_opt_dead_cf.c
src/glsl/nir/nir_opt_gcm.c
src/glsl/nir/nir_opt_peephole_select.c
src/glsl/nir/nir_opt_remove_phis.c
src/glsl/nir/nir_opt_undef.c
src/glsl/nir/nir_print.c
src/glsl/nir/nir_remove_dead_variables.c
src/glsl/nir/nir_split_var_copies.c
src/glsl/nir/nir_sweep.c
src/glsl/nir/nir_to_ssa.c
src/glsl/nir/nir_validate.c
src/mesa/drivers/dri/i965/brw_fs_nir.cpp
src/mesa/drivers/dri/i965/brw_nir.c
src/mesa/drivers/dri/i965/brw_nir_analyze_boolean_resolves.c
src/mesa/drivers/dri/i965/brw_nir_opt_peephole_ffma.c
src/mesa/drivers/dri/i965/brw_vec4_nir.cpp
src/mesa/program/prog_to_nir.c