Jason Ekstrand
707e72f13b
nir: Switch the arguments to nir_foreach_instr
...
This matches the "foreach x in container" pattern found in many other
programming languages. Generated by the following regular expression:
s/nir_foreach_instr(\([^,]*\),\s*\([^,]*\))/nir_foreach_instr(\2, \1)/
and similar expressions for nir_foreach_instr_safe etc.
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
2016-04-28 15:54:48 -07:00
Connor Abbott
3a8688fb41
nir/algebraic: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
1f8c100614
nir/validate: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
a471c161b1
nir/nir_worklist: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
db35177772
nir/remove_dead_variables: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
b3aaae398e
nir/split_var_copies: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
9d41a1ffeb
nir/repair_ssa: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
480a182ccd
nir/opt_peephole_select: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
e5f37701ab
nir/phi_builder: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
1ba40d834b
nir/opt_cp: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
8dd7d78925
nir/opt_remove_phis: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
1a8c17a59e
nir/opt_undef: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
52affdd2e6
nir/opt_dead_cf: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
ddc6639f85
nir/opt_dce: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
3afb3be674
nir/opt_gcm: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
eecf96f530
nir/opt_constant_folding: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
26b4c9ee15
nir/lower_samplers: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
f4ebff89e4
nir/normalize_cubemap_coords: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
492b3554a7
nir/lower_var_copies: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
c1b37c08bf
nir/move_vec_src_uses_to_dest: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
ceed12557d
nir/lower_vars_to_ssa: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
1557344c81
nir/lower_vec_to_movs: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
b1eada04b2
nir/lower_idiv: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
2febb88e6d
nir/lower_to_source_mods: fixup for new foreeach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
c81ca60b41
nir/lower_io: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
7e909972e3
nir/lower_system_values: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
76c74de456
nir/lower_phis_to_scalar: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
b89f0bb58c
nir/lower_indirect_derefs: fixup for new foreach_block()
...
v2 (Jason Ekstrand): Use nir_foreach_block_safe
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
e3c5bda16a
nir/nir_lower_global_vars: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
480d78f55b
nir/lower_atomics: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
06cf73a7ba
nir/lower_load_const: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
15264133d7
nir/lower_locals_to_regs: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
1c6307aab4
nir/lower_gs_intrinsics: fixup for new foreach_block()
...
v2 (Jason Ekstrand): Use nir_foreach_block_safe
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
3bf3100794
nir/nir: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
686f247b21
nir/lower_clip: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
e36fbcfc3f
nir/lower_alu_to_scalar: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
4179a56f42
nir/liveness: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
34af78edb3
nir/inline_functions: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
b23e59e172
nir/from_ssa: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Connor Abbott
d6a6c729ca
nir/dominance: fixup for new foreach_block()
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 15:52:17 -07:00
Jose Fonseca
99474dc29b
nir: Try to warn when C99 extensions are used in nir headers.
...
Ideally we'd have nir.h being included with -Wpedantic too, but it fails
with:
src/compiler/nir/nir.h:754:20: warning: ISO C++ forbids zero-size array ‘src’ [-Wpedantic]
nir_alu_src src[];
^
In file included from src/compiler/nir/glsl_to_nir.cpp:42:0:
src/compiler/nir/nir.h:919:16: warning: ISO C++ forbids zero-size array ‘src’ [-Wpedantic]
nir_src src[];
Reviewed-by: Connor Abbott <cwabbott0@gmail.com>
2016-04-28 16:48:13 +01:00
Jose Fonseca
e7438009af
nir: Remove spurious ; after nir_builder functions.
...
Makes -pedantic happy.
Reviewed-by: Connor Abbott <cwabbott0@gmail.com>
2016-04-28 16:48:12 +01:00
Jose Fonseca
caa5937ebb
nir: Remove spurious ; after namespace.
...
Makes -pedantic happy.
Reviewed-by: Connor Abbott <cwabbott0@gmail.com>
2016-04-28 16:48:12 +01:00
Jose Fonseca
f7854d8227
nir: Avoid C99 field initializers.
...
As they are not standard C++ and are not supported by MSVC C++ compiler.
Just have nir_imm_double match nir_imm_float above.
Reviewed-by: Connor Abbott <cwabbott0@gmail.com>
Reviewed-by: Sinclair Yeh <syeh@vmware.com>
2016-04-28 16:48:12 +01:00
Samuel Iglesias Gonsálvez
db07b46f2c
nir: Add lrp lowering for doubles in opt_algebraic
...
Some hardware (i965 on Broadwell generation, for example) does not support
natively the execution of lrp instruction with double arguments.
Add 'lower_flrp64' flag to lower this instruction in that case.
v2:
- Rename lower_flrp_double to lower_flrp64 (Jason)
- Fix typo (Jason)
- Adapt the code to define bit_size information in the opcodes.
Signed-off-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 12:01:40 +02:00
Samuel Iglesias Gonsálvez
443600d51e
nir: rename lower_flrp to lower_flrp32
...
A later patch will add lower_flrp64 option to NIR.
Signed-off-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 12:01:40 +02:00
Iago Toral Quiroga
072613b3f3
nir/lower_double_ops: lower round_even()
...
At least i965 hardware does not have native support for round_even() on doubles.
Reviewed-by: Matt Turner <mattst88@gmail.com>
2016-04-28 12:01:40 +02:00
Iago Toral Quiroga
bf91df7f7f
nir/lower_double_ops: lower fract()
...
At least i965 hardware does not have native support for fract() on doubles.
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 12:01:40 +02:00
Iago Toral Quiroga
126a1ac03f
nir/lower_double_ops: lower ceil()
...
At least i965 hardware does not have native support for ceil on doubles.
v2 (Sam):
- Improve the lowering pass to remove one bcsel (Jason).
Signed-off-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 12:01:36 +02:00
Iago Toral Quiroga
29541ec531
nir/lower_double_ops: lower floor()
...
At least i965 hardware does not have native support for floor on doubles.
v2 (Sam):
- Improve the lowering pass to remove one bcsel (Jason)
Signed-off-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-04-28 11:58:35 +02:00