Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[xsrc/trunk]: xsrc/external/mit/MesaLib/dist/src Import mesa 19.1.7
details: https://anonhg.NetBSD.org/xsrc/rev/666912167507
branches: trunk
changeset: 10388:666912167507
user: maya <maya%NetBSD.org@localhost>
date: Tue Sep 24 16:39:43 2019 +0000
description:
Import mesa 19.1.7
New features in mesa 19.1.0:
GL_ARB_parallel_shader_compile on all drivers.
GL_EXT_gpu_shader4 on all GL 3.1 drivers.
GL_EXT_shader_image_load_formatted on radeonsi.
GL_EXT_texture_buffer_object on all GL 3.1 drivers.
GL_EXT_texture_compression_s3tc_srgb on Gallium drivers and i965 (ES extension).
GL_NV_compute_shader_derivatives on iris and i965.
GL_KHR_parallel_shader_compile on all drivers.
VK_EXT_buffer_device_address on Intel and RADV.
VK_EXT_depth_clip_enable on Intel and RADV.
VK_KHR_ycbcr_image_arrays on Intel.
VK_EXT_inline_uniform_block on Intel and RADV.
VK_EXT_external_memory_host on Intel.
VK_EXT_host_query_reset on Intel and RADV.
VK_KHR_surface_protected_capabilities on Intel and RADV.
VK_EXT_pipeline_creation_feedback on Intel and RADV.
VK_KHR_8bit_storage on RADV.
VK_AMD_gpu_shader_int16 on RADV.
VK_AMD_gpu_shader_half_float on RADV.
VK_NV_compute_shader_derivatives on Intel.
VK_KHR_shader_float16_int8 on Intel and RADV (RADV only supports int8).
VK_KHR_shader_atomic_int64 on Intel.
VK_EXT_descriptor_indexing on Intel.
VK_KHR_shader_float16_int8 on Intel and RADV.
GL_INTEL_conservative_rasterization on iris.
VK_EXT_memory_budget on Intel.
New features in mesa 19.0.0:
GL_AMD_texture_texture4 on all GL 4.0 drivers.
GL_EXT_shader_implicit_conversions on all drivers (ES extension).
GL_EXT_texture_compression_bptc on all GL 4.0 drivers (ES extension).
GL_EXT_texture_compression_rgtc on all GL 3.0 drivers (ES extension).
GL_EXT_render_snorm on gallium drivers (ES extension).
GL_EXT_texture_view on drivers supporting texture views (ES extension).
GL_OES_texture_view on drivers supporting texture views (ES extension).
GL_NV_shader_atomic_float on nvc0 (Fermi/Kepler only).
Shader-based software implementations of GL_ARB_gpu_shader_fp64, GL_ARB_gpu_shader_int64, GL_ARB_vertex_attrib_64bit, and GL_ARB_shader_ballot on i965.
VK_ANDROID_external_memory_android_hardware_buffer on Intel
Fixed and re-exposed VK_EXT_pci_bus_info on Intel and RADV
VK_EXT_scalar_block_layout on Intel and RADV
VK_KHR_depth_stencil_resolve on Intel
VK_KHR_draw_indirect_count on Intel
VK_EXT_conditional_rendering on Intel
VK_EXT_memory_budget on RADV
Also, bug fixes.
diffstat:
external/mit/MesaLib/dist/src/compiler/glsl/builtin_types.cpp | 47 +
external/mit/MesaLib/dist/src/compiler/glsl/builtin_variables.cpp | 22 +-
external/mit/MesaLib/dist/src/compiler/glsl/float64.glsl | 1743 +++++
external/mit/MesaLib/dist/src/compiler/glsl/gl_nir.h | 4 +
external/mit/MesaLib/dist/src/compiler/glsl/gl_nir_link_uniform_initializers.c | 14 +-
external/mit/MesaLib/dist/src/compiler/glsl/gl_nir_link_uniforms.c | 13 +-
external/mit/MesaLib/dist/src/compiler/glsl/gl_nir_link_xfb.c | 250 +-
external/mit/MesaLib/dist/src/compiler/glsl/gl_nir_linker.c | 4 +-
external/mit/MesaLib/dist/src/compiler/glsl/gl_nir_lower_atomics.c | 4 +-
external/mit/MesaLib/dist/src/compiler/glsl/gl_nir_lower_bindless_images.c | 97 +
external/mit/MesaLib/dist/src/compiler/glsl/gl_nir_lower_buffers.c | 300 +
external/mit/MesaLib/dist/src/compiler/glsl/gl_nir_lower_samplers.c | 73 +-
external/mit/MesaLib/dist/src/compiler/glsl/gl_nir_lower_samplers_as_deref.c | 95 +-
external/mit/MesaLib/dist/src/compiler/glsl/glcpp/meson.build | 1 +
external/mit/MesaLib/dist/src/compiler/glsl/glsl_lexer.ll | 67 +-
external/mit/MesaLib/dist/src/compiler/glsl/glsl_parser.yy | 84 +-
external/mit/MesaLib/dist/src/compiler/glsl/glsl_parser_extras.h | 49 +-
external/mit/MesaLib/dist/src/compiler/glsl/glsl_to_nir.cpp | 799 ++-
external/mit/MesaLib/dist/src/compiler/glsl/glsl_to_nir.h | 6 +-
external/mit/MesaLib/dist/src/compiler/glsl/hir_field_selection.cpp | 2 +-
external/mit/MesaLib/dist/src/compiler/glsl/int64.glsl | 121 +
external/mit/MesaLib/dist/src/compiler/glsl/ir.cpp | 18 +-
external/mit/MesaLib/dist/src/compiler/glsl/ir.h | 16 +-
external/mit/MesaLib/dist/src/compiler/glsl/ir_array_refcount.cpp | 3 +-
external/mit/MesaLib/dist/src/compiler/glsl/ir_builder_print_visitor.cpp | 3 +-
external/mit/MesaLib/dist/src/compiler/glsl/ir_clone.cpp | 3 +-
external/mit/MesaLib/dist/src/compiler/glsl/ir_constant_expression.cpp | 3 +-
external/mit/MesaLib/dist/src/compiler/glsl/ir_function.cpp | 3 +-
external/mit/MesaLib/dist/src/compiler/glsl/ir_function_detect_recursion.cpp | 3 +-
external/mit/MesaLib/dist/src/compiler/glsl/ir_optimization.h | 1 +
external/mit/MesaLib/dist/src/compiler/glsl/ir_print_visitor.cpp | 7 +-
external/mit/MesaLib/dist/src/compiler/glsl/ir_validate.cpp | 14 +-
external/mit/MesaLib/dist/src/compiler/glsl/ir_variable_refcount.cpp | 3 +-
external/mit/MesaLib/dist/src/compiler/glsl/link_functions.cpp | 6 +-
external/mit/MesaLib/dist/src/compiler/glsl/link_uniform_blocks.cpp | 4 +-
external/mit/MesaLib/dist/src/compiler/glsl/link_uniform_initializers.cpp | 4 +-
external/mit/MesaLib/dist/src/compiler/glsl/link_uniforms.cpp | 59 +-
external/mit/MesaLib/dist/src/compiler/glsl/link_varyings.cpp | 316 +-
external/mit/MesaLib/dist/src/compiler/glsl/link_varyings.h | 42 +-
external/mit/MesaLib/dist/src/compiler/glsl/linker.cpp | 96 +-
external/mit/MesaLib/dist/src/compiler/glsl/list.h | 7 +
external/mit/MesaLib/dist/src/compiler/glsl/loop_analysis.cpp | 3 +-
external/mit/MesaLib/dist/src/compiler/glsl/loop_analysis.h | 3 +-
external/mit/MesaLib/dist/src/compiler/glsl/loop_unroll.cpp | 8 +-
external/mit/MesaLib/dist/src/compiler/glsl/lower_buffer_access.cpp | 8 +-
external/mit/MesaLib/dist/src/compiler/glsl/lower_if_to_cond_assign.cpp | 4 +-
external/mit/MesaLib/dist/src/compiler/glsl/lower_instructions.cpp | 70 +
external/mit/MesaLib/dist/src/compiler/glsl/lower_packed_varyings.cpp | 4 +-
external/mit/MesaLib/dist/src/compiler/glsl/lower_ubo_reference.cpp | 2 +-
external/mit/MesaLib/dist/src/compiler/glsl/lower_vector_derefs.cpp | 21 +
external/mit/MesaLib/dist/src/compiler/glsl/main.cpp | 5 +-
external/mit/MesaLib/dist/src/compiler/glsl/meson.build | 12 +-
external/mit/MesaLib/dist/src/compiler/glsl/opt_algebraic.cpp | 12 +
external/mit/MesaLib/dist/src/compiler/glsl/opt_constant_propagation.cpp | 12 +-
external/mit/MesaLib/dist/src/compiler/glsl/opt_constant_variable.cpp | 3 +-
external/mit/MesaLib/dist/src/compiler/glsl/opt_copy_propagation_elements.cpp | 6 +-
external/mit/MesaLib/dist/src/compiler/glsl/opt_function_inlining.cpp | 2 +-
external/mit/MesaLib/dist/src/compiler/glsl/opt_structure_splitting.cpp | 4 +-
external/mit/MesaLib/dist/src/compiler/glsl/serialize.cpp | 2 +
external/mit/MesaLib/dist/src/compiler/glsl/shader_cache.cpp | 29 +-
external/mit/MesaLib/dist/src/compiler/glsl/standalone.cpp | 16 +-
external/mit/MesaLib/dist/src/compiler/glsl/standalone.h | 3 +-
external/mit/MesaLib/dist/src/compiler/glsl/standalone_scaffolding.cpp | 19 +
external/mit/MesaLib/dist/src/compiler/glsl/standalone_scaffolding.h | 3 +
external/mit/MesaLib/dist/src/compiler/glsl/test_optpass.cpp | 5 +-
external/mit/MesaLib/dist/src/compiler/glsl/tests/array_refcount_test.cpp | 2 +-
external/mit/MesaLib/dist/src/compiler/glsl/tests/blob_test.c | 4 +
external/mit/MesaLib/dist/src/compiler/glsl/tests/general_ir_test.cpp | 14 +-
external/mit/MesaLib/dist/src/compiler/glsl/tests/meson.build | 37 +-
external/mit/MesaLib/dist/src/compiler/glsl/tests/warnings/031-__-in-function-name.vert | 22 +
external/mit/MesaLib/dist/src/compiler/glsl/tests/warnings/031-__-in-function-name.vert.expected | 3 +
external/mit/MesaLib/dist/src/compiler/glsl/tests/warnings/032-__-in-function-name-pragma-disable.vert | 24 +
external/mit/MesaLib/dist/src/compiler/glsl/tests/warnings/032-__-in-function-name-pragma-disable.vert.expected | 2 +
external/mit/MesaLib/dist/src/compiler/glsl/xxd.py | 111 +
external/mit/MesaLib/dist/src/compiler/nir/meson.build | 56 +-
external/mit/MesaLib/dist/src/compiler/nir/nir.c | 224 +-
external/mit/MesaLib/dist/src/compiler/nir/nir.h | 929 ++-
external/mit/MesaLib/dist/src/compiler/nir/nir_algebraic.py | 1084 ++-
external/mit/MesaLib/dist/src/compiler/nir/nir_builder.h | 531 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_builder_opcodes_h.py | 36 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_builtin_builder.c | 112 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_builtin_builder.h | 134 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_clone.c | 37 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_constant_expressions.h | 5 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_constant_expressions.py | 114 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_control_flow.c | 5 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_control_flow.h | 10 +
external/mit/MesaLib/dist/src/compiler/nir/nir_deref.c | 397 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_deref.h | 1 +
external/mit/MesaLib/dist/src/compiler/nir/nir_dominance.c | 14 +
external/mit/MesaLib/dist/src/compiler/nir/nir_format_convert.h | 88 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_from_ssa.c | 30 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_gather_info.c | 61 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_gather_ssa_types.c | 217 +
external/mit/MesaLib/dist/src/compiler/nir/nir_gather_xfb_info.c | 178 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_inline_functions.c | 166 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_instr_set.c | 379 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_intrinsics.py | 297 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_intrinsics_c.py | 5 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_linking_helpers.c | 745 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_loop_analyze.c | 799 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_alu_to_scalar.c | 4 +
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_array_deref_of_vec.c | 190 +
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_atomics_to_ssbo.c | 9 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_bitmap.c | 16 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_bool_to_float.c | 184 +
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_bool_to_int32.c | 162 +
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_clip.c | 121 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_clip_cull_distance_arrays.c | 154 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_constant_initializers.c | 65 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_double_ops.c | 341 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_drawpixels.c | 31 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_fb_read.c | 121 +
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_fragcoord_wtrans.c | 81 +
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_frexp.c | 208 +
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_global_vars_to_local.c | 18 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_idiv.c | 4 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_indirect_derefs.c | 9 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_int64.c | 638 ++-
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_io.c | 695 ++-
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_io_arrays_to_elements.c | 58 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_io_to_scalar.c | 27 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_io_to_temporaries.c | 5 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_io_to_vector.c | 387 +
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_load_const_to_scalar.c | 24 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_locals_to_regs.c | 8 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_non_uniform_access.c | 266 +
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_phis_to_scalar.c | 25 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_regs_to_ssa.c | 37 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_returns.c | 4 +
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_scratch.c | 195 +
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_system_values.c | 139 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_tex.c | 498 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_to_source_mods.c | 84 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_two_sided_color.c | 5 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_uniforms_to_ubo.c | 105 +
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_var_copies.c | 29 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_vars_to_ssa.c | 38 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_viewport_transform.c | 102 +
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_wpos_center.c | 9 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_lower_wpos_ytransform.c | 25 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_opcodes.py | 286 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_opcodes_c.py | 42 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_opt_algebraic.py | 413 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_opt_combine_stores.c | 401 +
external/mit/MesaLib/dist/src/compiler/nir/nir_opt_comparison_pre.c | 385 +
external/mit/MesaLib/dist/src/compiler/nir/nir_opt_constant_folding.c | 38 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_opt_copy_prop_vars.c | 416 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_opt_copy_propagate.c | 78 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_opt_cse.c | 13 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_opt_dce.c | 7 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_opt_dead_cf.c | 140 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_opt_dead_write_vars.c | 15 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_opt_find_array_copies.c | 14 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_opt_gcm.c | 10 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_opt_idiv_const.c | 217 +
external/mit/MesaLib/dist/src/compiler/nir/nir_opt_if.c | 892 ++-
external/mit/MesaLib/dist/src/compiler/nir/nir_opt_intrinsics.c | 40 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_opt_large_constants.c | 46 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_opt_loop_unroll.c | 495 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_opt_move_load_ubo.c | 2 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_opt_peephole_select.c | 79 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_opt_remove_phis.c | 12 +
external/mit/MesaLib/dist/src/compiler/nir/nir_opt_undef.c | 7 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_phi_builder.c | 49 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_print.c | 241 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_propagate_invariant.c | 16 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_remove_dead_variables.c | 14 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_repair_ssa.c | 57 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_search.c | 442 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_search.h | 49 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_search_helpers.h | 49 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_serialize.c | 54 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_split_per_member_structs.c | 12 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_split_var_copies.c | 25 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_split_vars.c | 83 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_strip.c | 104 +
external/mit/MesaLib/dist/src/compiler/nir/nir_sweep.c | 10 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_to_lcssa.c | 28 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_validate.c | 244 +-
external/mit/MesaLib/dist/src/compiler/nir/nir_xfb_info.h | 23 +-
external/mit/MesaLib/dist/src/compiler/nir/tests/algebraic_parser_test.py | 116 +
external/mit/MesaLib/dist/src/compiler/nir/tests/algebraic_parser_test.sh | 3 +
external/mit/MesaLib/dist/src/compiler/nir/tests/comparison_pre_tests.cpp | 531 +
external/mit/MesaLib/dist/src/compiler/nir/tests/negative_equal_tests.cpp | 361 +
external/mit/MesaLib/dist/src/compiler/nir/tests/vars_tests.cpp | 618 +-
external/mit/MesaLib/dist/src/compiler/spirv/OpenCL.std.h | 211 +
external/mit/MesaLib/dist/src/compiler/spirv/gl_spirv.c | 2 +-
external/mit/MesaLib/dist/src/compiler/spirv/nir_spirv.h | 20 +
external/mit/MesaLib/dist/src/compiler/spirv/spirv.core.grammar.json | 461 +-
external/mit/MesaLib/dist/src/compiler/spirv/spirv.h | 93 +-
external/mit/MesaLib/dist/src/compiler/spirv/spirv_info.h | 7 +
external/mit/MesaLib/dist/src/compiler/spirv/spirv_info_c.py | 13 +-
external/mit/MesaLib/dist/src/compiler/spirv/spirv_to_nir.c | 1305 ++-
external/mit/MesaLib/dist/src/compiler/spirv/vtn_alu.c | 163 +-
external/mit/MesaLib/dist/src/compiler/spirv/vtn_cfg.c | 133 +-
external/mit/MesaLib/dist/src/compiler/spirv/vtn_glsl450.c | 232 +-
external/mit/MesaLib/dist/src/compiler/spirv/vtn_opencl.c | 330 +
external/mit/MesaLib/dist/src/compiler/spirv/vtn_private.h | 153 +-
external/mit/MesaLib/dist/src/compiler/spirv/vtn_subgroup.c | 4 +-
external/mit/MesaLib/dist/src/compiler/spirv/vtn_variables.c | 1070 ++-
external/mit/MesaLib/dist/src/egl/Android.mk | 93 +
external/mit/MesaLib/dist/src/egl/SConscript | 1 -
external/mit/MesaLib/dist/src/egl/drivers/dri2/egl_dri2.c | 400 +-
external/mit/MesaLib/dist/src/egl/drivers/dri2/egl_dri2.h | 49 +-
external/mit/MesaLib/dist/src/egl/drivers/dri2/egl_dri2_fallbacks.h | 22 +-
external/mit/MesaLib/dist/src/egl/drivers/dri2/platform_android.c | 263 +-
external/mit/MesaLib/dist/src/egl/drivers/dri2/platform_drm.c | 26 +-
external/mit/MesaLib/dist/src/egl/drivers/dri2/platform_surfaceless.c | 153 +-
external/mit/MesaLib/dist/src/egl/drivers/dri2/platform_wayland.c | 33 +-
external/mit/MesaLib/dist/src/egl/drivers/dri2/platform_x11.c | 124 +-
external/mit/MesaLib/dist/src/egl/drivers/dri2/platform_x11_dri3.c | 18 +-
external/mit/MesaLib/dist/src/egl/drivers/haiku/egl_haiku.cpp | 20 +-
external/mit/MesaLib/dist/src/egl/generate/egl.xml | 201 +-
external/mit/MesaLib/dist/src/egl/generate/eglFunctionList.py | 4 +
external/mit/MesaLib/dist/src/egl/generate/gen_egl_dispatch.py | 10 +-
external/mit/MesaLib/dist/src/egl/main/eglapi.c | 123 +-
external/mit/MesaLib/dist/src/egl/main/eglapi.h | 85 +-
external/mit/MesaLib/dist/src/egl/main/eglconfig.c | 30 +-
external/mit/MesaLib/dist/src/egl/main/eglconfig.h | 12 +-
external/mit/MesaLib/dist/src/egl/main/eglcontext.c | 52 +-
external/mit/MesaLib/dist/src/egl/main/eglcontext.h | 8 +-
external/mit/MesaLib/dist/src/egl/main/eglcurrent.c | 46 +-
external/mit/MesaLib/dist/src/egl/main/egldefines.h | 2 -
external/mit/MesaLib/dist/src/egl/main/egldevice.c | 4 +-
external/mit/MesaLib/dist/src/egl/main/egldevice.h | 2 +-
external/mit/MesaLib/dist/src/egl/main/egldisplay.c | 56 +-
external/mit/MesaLib/dist/src/egl/main/egldisplay.h | 21 +-
external/mit/MesaLib/dist/src/egl/main/egldriver.c | 26 +-
external/mit/MesaLib/dist/src/egl/main/egldriver.h | 2 +-
external/mit/MesaLib/dist/src/egl/main/eglentrypoint.h | 2 +
external/mit/MesaLib/dist/src/egl/main/eglimage.c | 36 +-
external/mit/MesaLib/dist/src/egl/main/eglimage.h | 10 +-
external/mit/MesaLib/dist/src/egl/main/eglsurface.c | 65 +-
external/mit/MesaLib/dist/src/egl/main/eglsurface.h | 14 +-
external/mit/MesaLib/dist/src/egl/main/eglsync.c | 8 +-
external/mit/MesaLib/dist/src/egl/main/eglsync.h | 8 +-
external/mit/MesaLib/dist/src/egl/meson.build | 29 +-
external/mit/MesaLib/dist/src/egl/wayland/.editorconfig | 2 +
external/mit/MesaLib/dist/src/egl/wayland/wayland-drm/wayland-drm.xml | 1 +
external/mit/MesaLib/dist/src/freedreno/.dir-locals.el | 8 +
external/mit/MesaLib/dist/src/freedreno/Android.drm.mk | 41 +
external/mit/MesaLib/dist/src/freedreno/Android.ir3.mk | 51 +
external/mit/MesaLib/dist/src/freedreno/Android.mk | 30 +
external/mit/MesaLib/dist/src/freedreno/Makefile.sources | 61 +
external/mit/MesaLib/dist/src/freedreno/drm/freedreno_bo.c | 368 +
external/mit/MesaLib/dist/src/freedreno/drm/freedreno_bo_cache.c | 218 +
external/mit/MesaLib/dist/src/freedreno/drm/freedreno_device.c | 156 +
external/mit/MesaLib/dist/src/freedreno/drm/freedreno_drmif.h | 172 +
external/mit/MesaLib/dist/src/freedreno/drm/freedreno_pipe.c | 100 +
external/mit/MesaLib/dist/src/freedreno/drm/freedreno_priv.h | 259 +
external/mit/MesaLib/dist/src/freedreno/drm/freedreno_ringbuffer.c | 114 +
external/mit/MesaLib/dist/src/freedreno/drm/freedreno_ringbuffer.h | 160 +
external/mit/MesaLib/dist/src/freedreno/drm/meson.build | 54 +
external/mit/MesaLib/dist/src/freedreno/drm/msm_bo.c | 197 +
external/mit/MesaLib/dist/src/freedreno/drm/msm_device.c | 61 +
external/mit/MesaLib/dist/src/freedreno/drm/msm_drm.h | 335 +
external/mit/MesaLib/dist/src/freedreno/drm/msm_pipe.c | 252 +
external/mit/MesaLib/dist/src/freedreno/drm/msm_priv.h | 141 +
external/mit/MesaLib/dist/src/freedreno/drm/msm_ringbuffer.c | 722 ++
external/mit/MesaLib/dist/src/freedreno/drm/msm_ringbuffer_sp.c | 568 +
external/mit/MesaLib/dist/src/freedreno/ir3/disasm-a3xx.c | 1106 +++
external/mit/MesaLib/dist/src/freedreno/ir3/instr-a3xx.h | 952 +++
external/mit/MesaLib/dist/src/freedreno/ir3/ir3.c | 1086 +++
external/mit/MesaLib/dist/src/freedreno/ir3/ir3.h | 1491 ++++
external/mit/MesaLib/dist/src/freedreno/ir3/ir3_a4xx.c | 368 +
external/mit/MesaLib/dist/src/freedreno/ir3/ir3_a6xx.c | 417 +
external/mit/MesaLib/dist/src/freedreno/ir3/ir3_compiler.c | 77 +
external/mit/MesaLib/dist/src/freedreno/ir3/ir3_compiler.h | 102 +
external/mit/MesaLib/dist/src/freedreno/ir3/ir3_compiler_nir.c | 3028 ++++++++++
external/mit/MesaLib/dist/src/freedreno/ir3/ir3_context.c | 623 ++
external/mit/MesaLib/dist/src/freedreno/ir3/ir3_context.h | 193 +
external/mit/MesaLib/dist/src/freedreno/ir3/ir3_cp.c | 695 ++
external/mit/MesaLib/dist/src/freedreno/ir3/ir3_depth.c | 272 +
external/mit/MesaLib/dist/src/freedreno/ir3/ir3_group.c | 274 +
external/mit/MesaLib/dist/src/freedreno/ir3/ir3_image.c | 244 +
external/mit/MesaLib/dist/src/freedreno/ir3/ir3_image.h | 44 +
external/mit/MesaLib/dist/src/freedreno/ir3/ir3_legalize.c | 523 +
external/mit/MesaLib/dist/src/freedreno/ir3/ir3_nir.c | 311 +
external/mit/MesaLib/dist/src/freedreno/ir3/ir3_nir.h | 55 +
external/mit/MesaLib/dist/src/freedreno/ir3/ir3_nir_analyze_ubo_ranges.c | 190 +
external/mit/MesaLib/dist/src/freedreno/ir3/ir3_nir_lower_io_offsets.c | 304 +
external/mit/MesaLib/dist/src/freedreno/ir3/ir3_nir_lower_load_barycentric_at_offset.c | 124 +
external/mit/MesaLib/dist/src/freedreno/ir3/ir3_nir_lower_load_barycentric_at_sample.c | 130 +
external/mit/MesaLib/dist/src/freedreno/ir3/ir3_nir_lower_tg4_to_tex.c | 138 +
external/mit/MesaLib/dist/src/freedreno/ir3/ir3_nir_move_varying_inputs.c | 143 +
external/mit/MesaLib/dist/src/freedreno/ir3/ir3_nir_trig.py | 51 +
external/mit/MesaLib/dist/src/freedreno/ir3/ir3_print.c | 267 +
external/mit/MesaLib/dist/src/freedreno/meson.build | 28 +
289 files changed, 41320 insertions(+), 6075 deletions(-)
diffs (truncated from 62889 to 300 lines):
diff -r 99482f750c49 -r 666912167507 external/mit/MesaLib/dist/src/compiler/glsl/builtin_types.cpp
--- a/external/mit/MesaLib/dist/src/compiler/glsl/builtin_types.cpp Tue Sep 24 16:29:39 2019 +0000
+++ b/external/mit/MesaLib/dist/src/compiler/glsl/builtin_types.cpp Tue Sep 24 16:39:43 2019 +0000
@@ -37,6 +37,7 @@
#include "compiler/glsl_types.h"
#include "glsl_parser_extras.h"
#include "util/macros.h"
+#include "main/mtypes.h"
/**
* Declarations of type flyweights (glsl_type::_foo_type) and
@@ -324,6 +325,52 @@
add_type(symbols, glsl_type::sampler2DRectShadow_type);
}
+ if (state->EXT_gpu_shader4_enable) {
+ add_type(symbols, glsl_type::uint_type);
+ add_type(symbols, glsl_type::uvec2_type);
+ add_type(symbols, glsl_type::uvec3_type);
+ add_type(symbols, glsl_type::uvec4_type);
+
+ add_type(symbols, glsl_type::samplerCubeShadow_type);
+
+ if (state->ctx->Extensions.EXT_texture_array) {
+ add_type(symbols, glsl_type::sampler1DArray_type);
+ add_type(symbols, glsl_type::sampler2DArray_type);
+ add_type(symbols, glsl_type::sampler1DArrayShadow_type);
+ add_type(symbols, glsl_type::sampler2DArrayShadow_type);
+ }
+ if (state->ctx->Extensions.EXT_texture_buffer_object) {
+ add_type(symbols, glsl_type::samplerBuffer_type);
+ }
+
+ if (state->ctx->Extensions.EXT_texture_integer) {
+ add_type(symbols, glsl_type::isampler1D_type);
+ add_type(symbols, glsl_type::isampler2D_type);
+ add_type(symbols, glsl_type::isampler3D_type);
+ add_type(symbols, glsl_type::isamplerCube_type);
+
+ add_type(symbols, glsl_type::usampler1D_type);
+ add_type(symbols, glsl_type::usampler2D_type);
+ add_type(symbols, glsl_type::usampler3D_type);
+ add_type(symbols, glsl_type::usamplerCube_type);
+
+ if (state->ctx->Extensions.NV_texture_rectangle) {
+ add_type(symbols, glsl_type::isampler2DRect_type);
+ add_type(symbols, glsl_type::usampler2DRect_type);
+ }
+ if (state->ctx->Extensions.EXT_texture_array) {
+ add_type(symbols, glsl_type::isampler1DArray_type);
+ add_type(symbols, glsl_type::isampler2DArray_type);
+ add_type(symbols, glsl_type::usampler1DArray_type);
+ add_type(symbols, glsl_type::usampler2DArray_type);
+ }
+ if (state->ctx->Extensions.EXT_texture_buffer_object) {
+ add_type(symbols, glsl_type::isamplerBuffer_type);
+ add_type(symbols, glsl_type::usamplerBuffer_type);
+ }
+ }
+ }
+
if (state->EXT_texture_array_enable) {
add_type(symbols, glsl_type::sampler1DArray_type);
add_type(symbols, glsl_type::sampler2DArray_type);
diff -r 99482f750c49 -r 666912167507 external/mit/MesaLib/dist/src/compiler/glsl/builtin_variables.cpp
--- a/external/mit/MesaLib/dist/src/compiler/glsl/builtin_variables.cpp Tue Sep 24 16:29:39 2019 +0000
+++ b/external/mit/MesaLib/dist/src/compiler/glsl/builtin_variables.cpp Tue Sep 24 16:39:43 2019 +0000
@@ -21,6 +21,21 @@
* DEALINGS IN THE SOFTWARE.
*/
+
+/**
+ * Building this file with MinGW g++ 7.3 or 7.4 with:
+ * scons platform=windows toolchain=crossmingw machine=x86 build=profile
+ * triggers an internal compiler error.
+ * Overriding the optimization level to -O1 works around the issue.
+ * MinGW 5.3.1 does not seem to have the bug, neither does 8.3. So for now
+ * we're simply testing for version 7.x here.
+ */
+#if defined(__MINGW32__) && __GNUC__ == 7
+#warning "disabling optimizations for this file to work around compiler bug in MinGW gcc 7.x"
+#pragma GCC optimize("O1")
+#endif
+
+
#include "ir.h"
#include "ir_builder.h"
#include "linker.h"
@@ -1009,7 +1024,7 @@
{
ir_variable *var;
- if (state->is_version(130, 300))
+ if (state->is_version(130, 300) || state->EXT_gpu_shader4_enable)
add_system_value(SYSTEM_VALUE_VERTEX_ID, int_t, "gl_VertexID");
if (state->is_version(460, 0)) {
add_system_value(SYSTEM_VALUE_BASE_VERTEX, int_t, "gl_BaseVertex");
@@ -1018,7 +1033,8 @@
}
if (state->ARB_draw_instanced_enable)
add_system_value(SYSTEM_VALUE_INSTANCE_ID, int_t, "gl_InstanceIDARB");
- if (state->ARB_draw_instanced_enable || state->is_version(140, 300))
+ if (state->ARB_draw_instanced_enable || state->is_version(140, 300) ||
+ state->EXT_gpu_shader4_enable)
add_system_value(SYSTEM_VALUE_INSTANCE_ID, int_t, "gl_InstanceID");
if (state->ARB_shader_draw_parameters_enable) {
add_system_value(SYSTEM_VALUE_BASE_VERTEX, int_t, "gl_BaseVertexARB");
@@ -1171,7 +1187,7 @@
if (state->is_version(120, 100))
add_input(VARYING_SLOT_PNTC, vec2_t, "gl_PointCoord");
- if (state->has_geometry_shader()) {
+ if (state->has_geometry_shader() || state->EXT_gpu_shader4_enable) {
var = add_input(VARYING_SLOT_PRIMITIVE_ID, int_t, "gl_PrimitiveID");
var->data.interpolation = INTERP_MODE_FLAT;
}
diff -r 99482f750c49 -r 666912167507 external/mit/MesaLib/dist/src/compiler/glsl/float64.glsl
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/external/mit/MesaLib/dist/src/compiler/glsl/float64.glsl Tue Sep 24 16:39:43 2019 +0000
@@ -0,0 +1,1743 @@
+/*
+ * The implementations contained in this file are heavily based on the
+ * implementations found in the Berkeley SoftFloat library. As such, they are
+ * licensed under the same 3-clause BSD license:
+ *
+ * License for Berkeley SoftFloat Release 3e
+ *
+ * John R. Hauser
+ * 2018 January 20
+ *
+ * The following applies to the whole of SoftFloat Release 3e as well as to
+ * each source file individually.
+ *
+ * Copyright 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018 The Regents of the
+ * University of California. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions, and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions, and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * 3. Neither the name of the University nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS "AS IS", AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, ARE
+ * DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+#version 430
+#extension GL_ARB_gpu_shader_int64 : enable
+#extension GL_ARB_shader_bit_encoding : enable
+#extension GL_EXT_shader_integer_mix : enable
+#extension GL_MESA_shader_integer_functions : enable
+
+#pragma warning(off)
+
+/* Software IEEE floating-point rounding mode.
+ * GLSL spec section "4.7.1 Range and Precision":
+ * The rounding mode cannot be set and is undefined.
+ * But here, we are able to define the rounding mode at the compilation time.
+ */
+#define FLOAT_ROUND_NEAREST_EVEN 0
+#define FLOAT_ROUND_TO_ZERO 1
+#define FLOAT_ROUND_DOWN 2
+#define FLOAT_ROUND_UP 3
+#define FLOAT_ROUNDING_MODE FLOAT_ROUND_NEAREST_EVEN
+
+/* Absolute value of a Float64 :
+ * Clear the sign bit
+ */
+uint64_t
+__fabs64(uint64_t __a)
+{
+ uvec2 a = unpackUint2x32(__a);
+ a.y &= 0x7FFFFFFFu;
+ return packUint2x32(a);
+}
+
+/* Returns 1 if the double-precision floating-point value `a' is a NaN;
+ * otherwise returns 0.
+ */
+bool
+__is_nan(uint64_t __a)
+{
+ uvec2 a = unpackUint2x32(__a);
+ return (0xFFE00000u <= (a.y<<1)) &&
+ ((a.x != 0u) || ((a.y & 0x000FFFFFu) != 0u));
+}
+
+/* Negate value of a Float64 :
+ * Toggle the sign bit
+ */
+uint64_t
+__fneg64(uint64_t __a)
+{
+ uvec2 a = unpackUint2x32(__a);
+ uint t = a.y;
+
+ t ^= (1u << 31);
+ a.y = mix(t, a.y, __is_nan(__a));
+ return packUint2x32(a);
+}
+
+uint64_t
+__fsign64(uint64_t __a)
+{
+ uvec2 a = unpackUint2x32(__a);
+ uvec2 retval;
+ retval.x = 0u;
+ retval.y = mix((a.y & 0x80000000u) | 0x3FF00000u, 0u, (a.y << 1 | a.x) == 0u);
+ return packUint2x32(retval);
+}
+
+/* Returns the fraction bits of the double-precision floating-point value `a'.*/
+uint
+__extractFloat64FracLo(uint64_t a)
+{
+ return unpackUint2x32(a).x;
+}
+
+uint
+__extractFloat64FracHi(uint64_t a)
+{
+ return unpackUint2x32(a).y & 0x000FFFFFu;
+}
+
+/* Returns the exponent bits of the double-precision floating-point value `a'.*/
+int
+__extractFloat64Exp(uint64_t __a)
+{
+ uvec2 a = unpackUint2x32(__a);
+ return int((a.y>>20) & 0x7FFu);
+}
+
+bool
+__feq64_nonnan(uint64_t __a, uint64_t __b)
+{
+ uvec2 a = unpackUint2x32(__a);
+ uvec2 b = unpackUint2x32(__b);
+ return (a.x == b.x) &&
+ ((a.y == b.y) || ((a.x == 0u) && (((a.y | b.y)<<1) == 0u)));
+}
+
+/* Returns true if the double-precision floating-point value `a' is equal to the
+ * corresponding value `b', and false otherwise. The comparison is performed
+ * according to the IEEE Standard for Floating-Point Arithmetic.
+ */
+bool
+__feq64(uint64_t a, uint64_t b)
+{
+ if (__is_nan(a) || __is_nan(b))
+ return false;
+
+ return __feq64_nonnan(a, b);
+}
+
+/* Returns true if the double-precision floating-point value `a' is not equal
+ * to the corresponding value `b', and false otherwise. The comparison is
+ * performed according to the IEEE Standard for Floating-Point Arithmetic.
+ */
+bool
+__fne64(uint64_t a, uint64_t b)
+{
+ if (__is_nan(a) || __is_nan(b))
+ return true;
+
+ return !__feq64_nonnan(a, b);
+}
+
+/* Returns the sign bit of the double-precision floating-point value `a'.*/
+uint
+__extractFloat64Sign(uint64_t a)
+{
+ return unpackUint2x32(a).y >> 31;
+}
+
+/* Returns true if the 64-bit value formed by concatenating `a0' and `a1' is less
+ * than the 64-bit value formed by concatenating `b0' and `b1'. Otherwise,
+ * returns false.
+ */
+bool
+lt64(uint a0, uint a1, uint b0, uint b1)
+{
+ return (a0 < b0) || ((a0 == b0) && (a1 < b1));
+}
Home |
Main Index |
Thread Index |
Old Index