mesa/src/intel/compiler
Jason Ekstrand 561aaeeb48 intel/eu: Add the RNDU opcode
We don't want to use it on gen5 and earlier because only RNDD can be
done with a single instruction and we can implement RNDU(x) as -RNDD(-x)
so it's better to just do that when we have the instruction.  On gen6
and above, we may as well just use the right instruction.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5596>
2020-06-23 17:43:54 +00:00
..
brw_cfg.cpp intel/ir: Remove scheduling-based cycle count estimates. 2020-04-28 23:01:27 -07:00
brw_cfg.h intel/ir: Remove scheduling-based cycle count estimates. 2020-04-28 23:01:27 -07:00
brw_clip.h
brw_clip_line.c
brw_clip_point.c
brw_clip_tri.c
brw_clip_unfilled.c
brw_clip_util.c
brw_compile_clip.c
brw_compile_sf.c
brw_compiler.c nir: Replace the scoped_memory barrier by a scoped_barrier 2020-06-03 07:39:52 +00:00
brw_compiler.h intel/compiler: Always apply sample mask on Vulkan. 2020-06-19 20:24:11 -05:00
brw_dead_control_flow.cpp intel/compiler: Pass detailed dependency classes to invalidate_analysis() 2020-03-06 10:20:39 -08:00
brw_dead_control_flow.h
brw_debug_recompile.c intel/compiler: Add a "base class" for program keys 2019-07-10 19:35:55 +00:00
brw_disasm.c intel/fs: Emit HALT for discard on Gen4-5 2020-05-30 06:21:15 +00:00
brw_disasm_info.c intel/ir: Pass block cycle count information explicitly to disassembler. 2020-04-28 23:01:27 -07:00
brw_disasm_info.h intel/ir: Pass block cycle count information explicitly to disassembler. 2020-04-28 23:01:27 -07:00
brw_eu.cpp intel/disasm: SEND has two sources on Gen12+ 2020-01-31 17:23:39 +00:00
brw_eu.h intel/eu: Add the RNDU opcode 2020-06-23 17:43:54 +00:00
brw_eu_compact.c intel/compiler: Handle invalid compacted immediates 2020-01-22 00:19:21 +00:00
brw_eu_defines.h intel/eu: Use non-coherent mode (BTI=253) for stateless A64 messages 2020-04-30 14:45:50 +00:00
brw_eu_emit.c intel/eu: Add the RNDU opcode 2020-06-23 17:43:54 +00:00
brw_eu_util.c
brw_eu_validate.c remove final imports.h and imports.c bits 2020-04-21 11:09:04 -07:00
brw_fs.cpp intel/fs: Move more prog_data setup into populate_wm_prog_data 2020-06-23 17:43:53 +00:00
brw_fs.h intel/compiler: Drop opt_sampler_eot() 2020-06-12 19:01:26 +00:00
brw_fs_bank_conflicts.cpp intel/fs: Replace fs_visitor::bank_conflict_cycles() with stand-alone function. 2020-04-28 23:00:29 -07:00
brw_fs_builder.h intel/fs: Rename half() helpers to quarter(), allow index up to 3. 2020-04-28 23:00:29 -07:00
brw_fs_cmod_propagation.cpp intel/compiler: fix cmod propagation optimisations 2020-03-11 21:21:25 +00:00
brw_fs_combine_constants.cpp intel/compiler: Move idom tree calculation and related logic into analysis object 2020-03-06 10:21:03 -08:00
brw_fs_copy_propagation.cpp intel/compiler: Only GE and L modifiers are commutative for SEL 2020-04-17 08:21:43 -07:00
brw_fs_cse.cpp intel/compiler/fs: Switch liveness analysis to IR analysis framework 2020-03-06 10:20:57 -08:00
brw_fs_dead_code_eliminate.cpp intel/compiler/fs: Switch liveness analysis to IR analysis framework 2020-03-06 10:20:57 -08:00
brw_fs_generator.cpp intel/fs: Emit HALT for discard on Gen4-5 2020-05-30 06:21:15 +00:00
brw_fs_live_variables.cpp intel/compiler: Silence unused parameter warning in fs_live_variables::setup_one_read 2020-04-17 08:21:40 -07:00
brw_fs_live_variables.h intel/compiler: Silence unused parameter warning in fs_live_variables::setup_one_read 2020-04-17 08:21:40 -07:00
brw_fs_lower_pack.cpp intel/compiler: Pass detailed dependency classes to invalidate_analysis() 2020-03-06 10:20:39 -08:00
brw_fs_lower_regioning.cpp intel/compiler: Pass detailed dependency classes to invalidate_analysis() 2020-03-06 10:20:39 -08:00
brw_fs_nir.cpp intel/fs: Add Fall-through comment 2020-06-08 15:49:24 +00:00
brw_fs_reg_allocate.cpp replace _mesa_logbase2 with util_logbase2 2020-04-21 11:09:03 -07:00
brw_fs_register_coalesce.cpp intel/fs: Don't delete coalesced MOVs if they have a cmod 2020-04-29 16:45:51 +00:00
brw_fs_saturate_propagation.cpp intel/compiler/fs: Switch liveness analysis to IR analysis framework 2020-03-06 10:20:57 -08:00
brw_fs_scoreboard.cpp intel/compiler: Silence unused parameter warning in update_inst_scoreboard 2020-04-17 08:21:42 -07:00
brw_fs_sel_peephole.cpp intel/compiler: Don't create 64-bit src1 immediates in opt_peephole_sel 2020-04-23 00:53:14 +00:00
brw_fs_validate.cpp
brw_fs_visitor.cpp intel/fs: Work around dual-source blending hangs in combination with SIMD16 2020-05-27 14:35:13 +03:00
brw_gen_enum.h intel/compiler: Extract GEN_* macros into separate file 2020-01-22 00:19:20 +00:00
brw_inst.h intel/compiler: Fix array bounds warning on GCC 10. 2020-01-22 08:35:18 +01:00
brw_interpolation_map.c
brw_ir.h intel/ir: Add missing initialization of backend_reg::offset during construction. 2020-04-28 23:00:29 -07:00
brw_ir_allocator.h
brw_ir_analysis.h intel/compiler: Define more detailed analysis dependency classes 2020-03-06 10:20:37 -08:00
brw_ir_fs.h intel/fs: Replace fs_visitor::bank_conflict_cycles() with stand-alone function. 2020-04-28 23:00:29 -07:00
brw_ir_performance.cpp intel/ir: Update performance analysis parameters for memory fence codegen changes. 2020-04-29 23:40:36 +00:00
brw_ir_performance.h intel/ir: Import shader performance analysis pass. 2020-04-28 23:01:03 -07:00
brw_ir_vec4.h intel/vec4: Fix constness of vec4_instruction::reads_flag() and ::writes_flag(). 2020-04-28 23:00:29 -07:00
brw_nir.c intel/compiler: Extract control barriers from scoped barriers 2020-06-03 07:39:52 +00:00
brw_nir.h intel/fs: Break wm_prog_data setup into a helper 2020-06-23 17:43:53 +00:00
brw_nir_analyze_boolean_resolves.c intel/fs: Mark source 0 of bcsel as needing Boolean resolve 2019-06-11 12:12:07 -07:00
brw_nir_analyze_ubo_ranges.c intel/compiler: Do not qsort zero sized array 2020-02-19 12:07:24 +02:00
brw_nir_attribute_workarounds.c nir/builder: Remove the use_fmov parameter from nir_swizzle 2019-05-24 08:38:11 -05:00
brw_nir_clamp_image_1d_2d_array_sizes.c intel/nir: Call nir_metadata_preserve on !progress 2020-06-11 05:08:12 +00:00
brw_nir_lower_alpha_to_coverage.c nir: Add alpha_to_coverage lowering pass 2019-10-21 11:27:29 -07:00
brw_nir_lower_conversions.c intel/nir: Call nir_metadata_preserve on !progress 2020-06-11 05:08:12 +00:00
brw_nir_lower_cs_intrinsics.c intel/fs: Remove unused state from brw_nir_lower_cs_intrinsics 2020-05-26 20:35:03 +00:00
brw_nir_lower_image_load_store.c intel/nir: Call nir_metadata_preserve on !progress 2020-06-11 05:08:12 +00:00
brw_nir_lower_mem_access_bit_sizes.c intel/nir: Call nir_metadata_preserve on !progress 2020-06-11 05:08:12 +00:00
brw_nir_lower_scoped_barriers.c nir: Call nir_metadata_preserve on !progress 2020-06-11 05:08:12 +00:00
brw_nir_opt_peephole_ffma.c intel/nir: Call nir_metadata_preserve on !progress 2020-06-11 05:08:12 +00:00
brw_nir_tcs_workarounds.c
brw_nir_trig_workarounds.py intel/nir: do not apply the fsin and fcos trig workarounds for consts 2019-09-17 23:39:18 +03:00
brw_packed_float.c intel/compiler: Cast to target type before shifting left 2019-10-24 16:19:23 +02:00
brw_predicated_break.cpp intel/compiler: Pass detailed dependency classes to invalidate_analysis() 2020-03-06 10:20:39 -08:00
brw_reg.h intel/fs: Emit HALT for discard on Gen4-5 2020-05-30 06:21:15 +00:00
brw_reg_type.c intel/compiler: Handle invalid inputs to brw_reg_type_to_*() 2020-01-22 00:19:21 +00:00
brw_reg_type.h intel/compiler: Add a INVALID_{,HW_}REG_TYPE macros 2020-01-22 00:19:20 +00:00
brw_schedule_instructions.cpp intel/ir: Remove scheduling-based cycle count estimates. 2020-04-28 23:01:27 -07:00
brw_shader.cpp intel: Use SATURATE 2020-05-26 22:31:31 +00:00
brw_shader.h intel/compiler: Expose brw_texture_offset to C 2020-06-23 17:43:53 +00:00
brw_vec4.cpp intel/ir: Use brw::performance object instead of CFG cycle counts for codegen stats. 2020-04-28 23:01:27 -07:00
brw_vec4.h intel/ir: Use brw::performance object instead of CFG cycle counts for codegen stats. 2020-04-28 23:01:27 -07:00
brw_vec4_builder.h
brw_vec4_cmod_propagation.cpp intel/compiler: Pass detailed dependency classes to invalidate_analysis() 2020-03-06 10:20:39 -08:00
brw_vec4_copy_propagation.cpp intel/compiler: Don't copy prop source mods into PICK_HIGH_32BIT 2020-04-22 17:03:18 -07:00
brw_vec4_cse.cpp i965/vec4: Ignore swizzle of VGRF for use by var_range_end() 2020-05-20 20:19:18 +00:00
brw_vec4_dead_code_eliminate.cpp intel/compiler/vec4: Switch liveness analysis to IR analysis framework 2020-03-06 10:20:59 -08:00
brw_vec4_generator.cpp intel/vec4: Stomp the return type of RESINFO to UINT32 2020-05-30 01:08:50 -05:00
brw_vec4_gs_nir.cpp intel/vec4: Drop all of the 64-bit varying code 2019-07-31 18:14:09 -05:00
brw_vec4_gs_visitor.cpp intel/ir: Use brw::performance object instead of CFG cycle counts for codegen stats. 2020-04-28 23:01:27 -07:00
brw_vec4_gs_visitor.h
brw_vec4_live_variables.cpp intel/compiler: Drop invalidate_live_intervals() 2020-03-06 10:21:01 -08:00
brw_vec4_live_variables.h intel/compiler/vec4: Switch liveness analysis to IR analysis framework 2020-03-06 10:20:59 -08:00
brw_vec4_nir.cpp nir: Replace the scoped_memory barrier by a scoped_barrier 2020-06-03 07:39:52 +00:00
brw_vec4_reg_allocate.cpp intel/compiler/vec4: Switch liveness analysis to IR analysis framework 2020-03-06 10:20:59 -08:00
brw_vec4_surface_builder.cpp
brw_vec4_surface_builder.h
brw_vec4_tcs.cpp anv,iris: Fix input vertex max for tcs on gen12 2020-05-01 16:49:11 +00:00
brw_vec4_tcs.h intel/compiler: Silence unused parameter warnings in vec4_tcs_visitor 2020-04-17 08:21:37 -07:00
brw_vec4_tes.cpp intel/vec4: Drop all of the 64-bit varying code 2019-07-31 18:14:09 -05:00
brw_vec4_tes.h
brw_vec4_visitor.cpp intel/ir: Import shader performance analysis pass. 2020-04-28 23:01:03 -07:00
brw_vec4_vs.h i965: Use NIR to lower legacy userclipping. 2019-07-24 18:00:13 +00:00
brw_vec4_vs_visitor.cpp i965: Use NIR to lower legacy userclipping. 2019-07-24 18:00:13 +00:00
brw_vue_map.c intel/fs: Allow multiple slots for position 2020-04-07 17:16:09 +00:00
brw_wm_iz.cpp intel/fs: Move more prog_data setup into populate_wm_prog_data 2020-06-23 17:43:53 +00:00
gen6_gs_visitor.cpp
gen6_gs_visitor.h
meson.build intel/compiler: Extract control barriers from scoped barriers 2020-06-03 07:39:52 +00:00
test_eu_compact.cpp intel/compiler: Test compaction on Gen <= 12 2020-01-22 00:19:21 +00:00
test_eu_validate.cpp intel/ir: Pass block cycle count information explicitly to disassembler. 2020-04-28 23:01:27 -07:00
test_fs_cmod_propagation.cpp intel/compiler: fix cmod propagation optimisations 2020-03-11 21:21:25 +00:00
test_fs_copy_propagation.cpp intel/compiler: Pass backend_shader * to cfg_t() 2020-03-09 04:44:12 +00:00
test_fs_saturate_propagation.cpp intel/compiler: Pass backend_shader * to cfg_t() 2020-03-09 04:44:12 +00:00
test_fs_scoreboard.cpp intel/compiler: Pass backend_shader * to cfg_t() 2020-03-09 04:44:12 +00:00
test_vec4_cmod_propagation.cpp
test_vec4_copy_propagation.cpp
test_vec4_dead_code_eliminate.cpp
test_vec4_register_coalesce.cpp
test_vf_float_conversions.cpp