mesa/src/freedreno/ir3
Emma Anholt b024102d7c freedreno/ir3: Use nir_opt_offset for removing constant adds for shared vars.
Saves some work in carchase and manhattan31:

instructions in affected programs: 2842 -> 2818 (-0.84%)
nops in affected programs: 1131 -> 1105 (-2.30%)
non-nops in affected programs: 1236 -> 1238 (0.16%)
mov in affected programs: 57 -> 61 (7.02%)
dwords in affected programs: 2144 -> 2150 (0.28%)
cat0 in affected programs: 1195 -> 1169 (-2.18%)
cat1 in affected programs: 151 -> 155 (2.65%)
cat2 in affected programs: 142 -> 140 (-1.41%)
sstall in affected programs: 190 -> 178 (-6.32%)
(ss) in affected programs: 63 -> 63 (0.00%)
systall in affected programs: 532 -> 511 (-3.95%)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14023>
2022-01-16 19:11:29 +00:00
..
tests ir3: New cat3 instructions 2022-01-10 13:20:39 +02:00
.dir-locals.el ir3: Update .editorconfig and .dir-locals.el 2021-07-12 20:57:21 +00:00
.editorconfig ir3: Update .editorconfig and .dir-locals.el 2021-07-12 20:57:21 +00:00
disasm-a3xx.c ir3: New cat3 instructions 2022-01-10 13:20:39 +02:00
instr-a3xx.h ir3: New cat3 instructions 2022-01-10 13:20:39 +02:00
ir3.c ir3: New cat3 instructions 2022-01-10 13:20:39 +02:00
ir3.h ir3: New cat3 instructions 2022-01-10 13:20:39 +02:00
ir3_a4xx.c freedreno/ir3: handle global atomics 2021-11-23 18:26:37 +00:00
ir3_a6xx.c freedreno/ir3: handle global atomics 2021-11-23 18:26:37 +00:00
ir3_array_to_ssa.c ir3: Reformat source with clang-format 2021-07-12 20:57:21 +00:00
ir3_assembler.c freedreno/computerator: Fix mergedregs 2021-10-19 16:04:42 +00:00
ir3_assembler.h a4xx/computerator: add initial backend 2021-09-10 01:20:22 +00:00
ir3_cf.c ir3: prohibit folding of half->full conversion into mul.s24/u24 2021-08-20 11:46:14 +00:00
ir3_compiler.c tu,ir3: Implement VK_KHR_shader_integer_dot_product 2022-01-10 13:21:24 +02:00
ir3_compiler.h tu,ir3: Implement VK_KHR_shader_integer_dot_product 2022-01-10 13:21:24 +02:00
ir3_compiler_nir.c tu,ir3: Implement VK_KHR_shader_integer_dot_product 2022-01-10 13:21:24 +02:00
ir3_context.c a5xx: remove astc srgb workaround logic 2021-11-15 17:31:53 +00:00
ir3_context.h freedreno/ir3: handle global atomics 2021-11-23 18:26:37 +00:00
ir3_cp.c ir3/cp: Prevent setting an address on subgroup macros 2021-11-25 12:18:48 +00:00
ir3_cp_postsched.c ir3/cp: Prevent setting an address on subgroup macros 2021-11-25 12:18:48 +00:00
ir3_cse.c ir3/cse: Support mov instructions 2021-10-20 15:19:15 +00:00
ir3_dce.c ir3: Reformat source with clang-format 2021-07-12 20:57:21 +00:00
ir3_delay.c ir3: Use (ss) for instructions writing shared regs 2022-01-07 14:26:08 +00:00
ir3_disk_cache.c ir3: Add wavesize control 2022-01-10 10:58:28 +00:00
ir3_dominance.c ir3: Reformat source with clang-format 2021-07-12 20:57:21 +00:00
ir3_image.c freedreno/ir3: fix image-to-tex flags, remove 3d -> array hack 2021-11-16 00:33:31 +00:00
ir3_image.h ir3: Reformat source with clang-format 2021-07-12 20:57:21 +00:00
ir3_legalize.c ir3: Use (ss) for instructions writing shared regs 2022-01-07 14:26:08 +00:00
ir3_lexer.l ir3: New cat3 instructions 2022-01-10 13:20:39 +02:00
ir3_liveness.c freedreno/ir3: Cleanup liveness lifetime 2021-09-18 20:24:49 +00:00
ir3_lower_parallelcopy.c ir3/lower_pcopy: Fix bug with "illegal" copies and swaps 2021-11-19 16:59:54 +00:00
ir3_lower_spill.c ir3/spill: Support larger spill slot offset 2021-11-19 16:59:54 +00:00
ir3_lower_subgroups.c ir3/lower_subgroups: Fix potential infinite loop 2021-11-25 10:16:48 +00:00
ir3_merge_regs.c ir3: Initial support for spilling non-shared registers 2021-08-20 10:37:36 +00:00
ir3_nir.c freedreno/ir3: Use nir_opt_offset for removing constant adds for shared vars. 2022-01-16 19:11:29 +00:00
ir3_nir.h ir3: Make nir compiler options a part of ir3_compiler 2022-01-10 13:20:39 +02:00
ir3_nir_analyze_ubo_ranges.c ir3: Reformat source with clang-format 2021-07-12 20:57:21 +00:00
ir3_nir_imul.py python: drop python2 support 2021-08-14 21:44:32 +00:00
ir3_nir_lower_64b.c freedreno/ir3: handle global atomics 2021-11-23 18:26:37 +00:00
ir3_nir_lower_io_offsets.c freedreno/ir3/lower_io_offsets: Drop gpu_id param 2021-08-06 18:51:50 +00:00
ir3_nir_lower_load_barycentric_at_offset.c ir3: Reformat source with clang-format 2021-07-12 20:57:21 +00:00
ir3_nir_lower_load_barycentric_at_sample.c ir3: Reformat source with clang-format 2021-07-12 20:57:21 +00:00
ir3_nir_lower_tess.c freedreno/ir3: set proper dst size for {store,load}_{global,shared}_ir3 2021-10-21 18:59:57 +00:00
ir3_nir_lower_tex_prefetch.c ir3: Reformat source with clang-format 2021-07-12 20:57:21 +00:00
ir3_nir_lower_tg4_to_tex.c nir: Drop the unused instr arg for src/dest copy functions. 2021-09-14 17:53:06 +00:00
ir3_nir_lower_wide_load_store.c freedreno/ir3: Add wide load/store lowering 2021-10-21 18:59:57 +00:00
ir3_nir_move_varying_inputs.c ir3: Reformat source with clang-format 2021-07-12 20:57:21 +00:00
ir3_nir_trig.py ir3: Make trig replacement expression exact 2021-09-17 15:45:29 +00:00
ir3_parser.y ir3: New cat3 instructions 2022-01-10 13:20:39 +02:00
ir3_postsched.c ir3/postsched: Rename tex/sfu to sy/ss 2022-01-07 14:26:08 +00:00
ir3_print.c freedreno/ir3/print: Show end's outidxs 2021-10-31 16:30:13 +00:00
ir3_ra.c ir3: Add wavesize control 2022-01-10 10:58:28 +00:00
ir3_ra.h freedreno/ir3: Cleanup liveness lifetime 2021-09-18 20:24:49 +00:00
ir3_ra_validate.c ir3: Reformat source with clang-format 2021-07-12 20:57:21 +00:00
ir3_remove_unreachable.c ir3: Add pass to remove unreachable blocks 2021-08-20 10:37:36 +00:00
ir3_sched.c ir3/sched: Rename tex/sfu to sy/ss 2022-01-07 14:26:08 +00:00
ir3_shader.c ir3: Add wavesize control 2022-01-10 10:58:28 +00:00
ir3_shader.h tu, ir3: Support runtime gl_SubgroupSize in FS 2022-01-10 10:58:28 +00:00
ir3_spill.c ir3/spill: Initial implementation of rematerialization 2021-11-08 23:51:37 +00:00
ir3_validate.c ir3: Use getfiberid for SubgroupInvocationID on gen4 2021-12-07 20:45:53 +00:00
meson.build freedreno/ir3: Add wide load/store lowering 2021-10-21 18:59:57 +00:00