nir: move control flow modification to its own file
authorConnor Abbott <cwabbott0@gmail.com>
Wed, 22 Jul 2015 02:54:18 +0000 (19:54 -0700)
committerKenneth Graunke <kenneth@whitecape.org>
Mon, 24 Aug 2015 20:31:41 +0000 (13:31 -0700)
commitb49371b8ede380f10ea3ab333246a3b01ac6aca5
treeadeb1ad6afb73f28102acc94839e15777538d7d9
parent1c53f89696124de2c7e93665ef8b07bc17b2cb86
nir: move control flow modification to its own file

We want to start reworking and expanding this code, but it'll be a lot
easier to do once we disentangle it from the rest of the stuff in nir.c.
Unfortunately, there are a few unavoidable dependencies in nir.c on
methods we'd rather not expose publicly, since if not used in very
specific situations they can cause Bad Things (tm) to happen. Namely, we
need to do some magical control flow munging when adding/removing jumps.
In the future, we may disallow adding/removing jumps in
nir_instr_insert_*() and nir_instr_remove(), and use separate functions
that are part of the control flow modification code, but for now we
expose them and put them in a separate, private header.

Signed-off-by: Connor Abbott <connor.w.abbott@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
src/gallium/auxiliary/nir/tgsi_to_nir.c
src/glsl/Makefile.sources
src/glsl/nir/glsl_to_nir.cpp
src/glsl/nir/nir.c
src/glsl/nir/nir.h
src/glsl/nir/nir_control_flow.c [new file with mode: 0644]
src/glsl/nir/nir_control_flow.h [new file with mode: 0644]
src/glsl/nir/nir_control_flow_private.h [new file with mode: 0644]
src/glsl/nir/nir_opt_peephole_select.c