[Mesa-dev] [PATCHES] Tessellation is here
Dieter Nützel
Dieter at nuetzel-hh.de
Wed Jun 17 07:48:39 PDT 2015
Am 17.06.2015 14:34, schrieb Marek Olšák:
> Only the RadeonSI driver supports it right now.
>
> Marek
Marek,
will we ever see something on r600 or do we need 'new' boards (Turks,
here)?
GREAT stuff.
-Dieter
> On Wed, Jun 17, 2015 at 2:21 PM, Ilyes Gouta <ilyes.gouta at gmail.com>
> wrote:
>> Hi,
>>
>> On Wed, Jun 17, 2015 at 1:03 PM, Dragomir Ivanov
>> <drago.ivanov at gmail.com>
>> wrote:
>>>
>>> Wonderful Marek. Many thanks to you all. I hope till the end of the
>>> year
>>> we will have OGL 4.3 in Mesa.
>>
>>
>> Is LLVMpipe (and software rasterziation) also supported?
>>
>> Ilyes
>>
>>>
>>>
>>> On Wed, Jun 17, 2015 at 2:18 AM, Marek Olšák <maraeo at gmail.com>
>>> wrote:
>>>>
>>>> You can also use this for nicer reviewing:
>>>> http://cgit.freedesktop.org/~mareko/mesa/log/?h=tessellation-review
>>>>
>>>> Please note that there are differences from Chris Forbes's
>>>> tessellation branches. I think I modified almost all patches when I
>>>> was reviewing them, fixing them, and cleaning them up.
>>>>
>>>> Marek
>>>>
>>>> On Wed, Jun 17, 2015 at 1:00 AM, Marek Olšák <maraeo at gmail.com>
>>>> wrote:
>>>> > Hi,
>>>> >
>>>> > First, I'd like to thank Fabian Bieler, Chris Forbes, and Ilia Mirkin
>>>> > for their contributions to this.
>>>> >
>>>> > The development of tessellation has reached the point that the only
>>>> > way to make it better and more compliant is to write piglit tests that
>>>> > help find small bugs that are difficult to catch during code review.
>>>> > According to piglit, it's already more compliant than the NVIDIA
>>>> > driver. (The NVIDIA GLSL compiler sometimes even dies with an internal
>>>> > error on some of the variable indexing tests. I haven't tested
>>>> > Catalyst.)
>>>> >
>>>> > Other than piglit, the following apps have been tested:
>>>> > - Unigine Heaven 4.0 (wireframe both on and off)
>>>> > - TessMark 0.3.0 *
>>>> > - GpuTest 0.7.0 containing a newer version of TessMark *
>>>> > - Tutorials 30 and 31 from http://ogldev.atspace.co.uk/ *
>>>> >
>>>> > (* These don't work with the OpenGL Core profile and need overrides
>>>> > and code hacks to enable OpenGL 4.0 Compatibility)
>>>> >
>>>> > The RadeonSI driver support is complete and requires LLVM 3.6.2. There
>>>> > is just one small bug with GpuTest 0.7.0.
>>>> >
>>>> > The patches will be split up into 3 series:
>>>> > 1) Mesa + GLSL
>>>> > 2) State tracker
>>>> > 3) Radeonsi
>>>> >
>>>> > docs/GL3.txt | 2 +-
>>>> > docs/relnotes/10.7.0.html | 1 +
>>>> > src/gallium/docs/source/screen.rst | 4 +
>>>> > src/gallium/drivers/freedreno/freedreno_screen.c | 1 +
>>>> > src/gallium/drivers/i915/i915_screen.c | 1 +
>>>> > src/gallium/drivers/ilo/ilo_screen.c | 1 +
>>>> > src/gallium/drivers/llvmpipe/lp_screen.c | 1 +
>>>> > src/gallium/drivers/nouveau/nv30/nv30_screen.c | 1 +
>>>> > src/gallium/drivers/nouveau/nv50/nv50_screen.c | 1 +
>>>> > src/gallium/drivers/nouveau/nvc0/nvc0_screen.c | 1 +
>>>> > src/gallium/drivers/r300/r300_screen.c | 1 +
>>>> > src/gallium/drivers/r600/r600_pipe.c | 1 +
>>>> > src/gallium/drivers/radeon/r600_pipe_common.c | 6 +
>>>> > src/gallium/drivers/radeon/r600_pipe_common.h | 20 +-
>>>> > src/gallium/drivers/radeon/radeon_llvm.h | 14 +-
>>>> > src/gallium/drivers/radeon/radeon_llvm_emit.c | 2 +
>>>> > .../drivers/radeon/radeon_setup_tgsi_llvm.c | 40 +-
>>>> > src/gallium/drivers/radeonsi/si_blit.c | 2 +
>>>> > src/gallium/drivers/radeonsi/si_descriptors.c | 251 ++++--
>>>> > src/gallium/drivers/radeonsi/si_hw_context.c | 8 +
>>>> > src/gallium/drivers/radeonsi/si_pipe.c | 22 +-
>>>> > src/gallium/drivers/radeonsi/si_pipe.h | 29 +-
>>>> > src/gallium/drivers/radeonsi/si_shader.c | 835
>>>> > ++++++++++++++++++--
>>>> > src/gallium/drivers/radeonsi/si_shader.h | 123 ++-
>>>> > src/gallium/drivers/radeonsi/si_state.c | 47 +-
>>>> > src/gallium/drivers/radeonsi/si_state.h | 23 +-
>>>> > src/gallium/drivers/radeonsi/si_state_draw.c | 217 ++++-
>>>> > src/gallium/drivers/radeonsi/si_state_shaders.c | 494 +++++++++++-
>>>> > src/gallium/drivers/softpipe/sp_screen.c | 1 +
>>>> > src/gallium/drivers/svga/svga_screen.c | 1 +
>>>> > src/gallium/drivers/vc4/vc4_screen.c | 1 +
>>>> > src/gallium/include/pipe/p_defines.h | 1 +
>>>> > src/glsl/Makefile.sources | 1 +
>>>> > src/glsl/ast.h | 55 +-
>>>> > src/glsl/ast_array_index.cpp | 47 +-
>>>> > src/glsl/ast_to_hir.cpp | 350 +++++++-
>>>> > src/glsl/ast_type.cpp | 115 ++-
>>>> > src/glsl/builtin_functions.cpp | 4 +-
>>>> > src/glsl/builtin_variables.cpp | 112 ++-
>>>> > src/glsl/glcpp/glcpp-parse.y | 3 +
>>>> > src/glsl/glsl_lexer.ll | 5 +-
>>>> > src/glsl/glsl_parser.yy | 133 +++-
>>>> > src/glsl/glsl_parser_extras.cpp | 60 +-
>>>> > src/glsl/glsl_parser_extras.h | 48 +-
>>>> > src/glsl/glsl_types.cpp | 5 +
>>>> > src/glsl/glsl_types.h | 6 +
>>>> > src/glsl/ir.cpp | 2 +
>>>> > src/glsl/ir.h | 1 +
>>>> > src/glsl/ir_optimization.h | 8 +-
>>>> > src/glsl/ir_print_visitor.cpp | 5 +-
>>>> > src/glsl/ir_reader.cpp | 2 +
>>>> > src/glsl/ir_set_program_inouts.cpp | 96 ++-
>>>> > src/glsl/link_interface_blocks.cpp | 11 +-
>>>> > src/glsl/link_varyings.cpp | 183 ++++-
>>>> > src/glsl/link_varyings.h | 16 +-
>>>> > src/glsl/linker.cpp | 415 +++++++++-
>>>> > src/glsl/lower_clip_distance.cpp | 185 +++--
>>>> > src/glsl/lower_named_interface_blocks.cpp | 8 +-
>>>> > src/glsl/lower_output_reads.cpp | 13 +-
>>>> > src/glsl/lower_packed_varyings.cpp | 1 +
>>>> > src/glsl/lower_tess_level.cpp | 462 +++++++++++
>>>> > src/glsl/lower_variable_index_to_cond_assign.cpp | 43 +-
>>>> > src/glsl/main.cpp | 8 +-
>>>> > src/glsl/shader_enums.h | 21 +-
>>>> > src/glsl/standalone_scaffolding.cpp | 1 +
>>>> > src/glsl/standalone_scaffolding.h | 4 +
>>>> > src/glsl/test_optpass.cpp | 3 +-
>>>> > src/mapi/glapi/gen/ARB_tessellation_shader.xml | 62 ++
>>>> > src/mapi/glapi/gen/gl_API.xml | 6 +-
>>>> > src/mapi/glapi/gen/gl_enums.py | 1 +
>>>> > src/mesa/Makefile.sources | 1 +
>>>> > src/mesa/drivers/common/meta.c | 2 +
>>>> > src/mesa/drivers/dri/common/drirc | 23 +-
>>>> > src/mesa/drivers/dri/i965/brw_context.c | 1 +
>>>> > src/mesa/drivers/dri/i965/brw_shader.cpp | 10 +-
>>>> > src/mesa/drivers/dri/i965/intel_debug.c | 4 +-
>>>> > src/mesa/main/api_validate.c | 86 +-
>>>> > src/mesa/main/config.h | 8 +
>>>> > src/mesa/main/context.c | 12 +
>>>> > src/mesa/main/context.h | 11 +
>>>> > src/mesa/main/get.c | 1 +
>>>> > src/mesa/main/get_hash_params.py | 28 +
>>>> > src/mesa/main/mtypes.h | 141 +++-
>>>> > src/mesa/main/pipelineobj.c | 32 +-
>>>> > src/mesa/main/queryobj.c | 2 +-
>>>> > src/mesa/main/shader_query.cpp | 18 +-
>>>> > src/mesa/main/shaderapi.c | 182 ++++-
>>>> > src/mesa/main/shaderapi.h | 8 +
>>>> > src/mesa/main/shaderobj.h | 4 +
>>>> > src/mesa/main/state.c | 54 +-
>>>> > src/mesa/main/tests/dispatch_sanity.cpp | 2 +
>>>> > src/mesa/main/uniforms.c | 21 +-
>>>> > src/mesa/program/ir_to_mesa.cpp | 2 +-
>>>> > src/mesa/program/prog_print.c | 10 +
>>>> > src/mesa/program/program.c | 59 ++
>>>> > src/mesa/program/program.h | 80 +-
>>>> > src/mesa/state_tracker/st_atom.c | 9 +
>>>> > src/mesa/state_tracker/st_atom.h | 9 +
>>>> > src/mesa/state_tracker/st_atom_constbuf.c | 88 ++-
>>>> > src/mesa/state_tracker/st_atom_sampler.c | 16 +
>>>> > src/mesa/state_tracker/st_atom_shader.c | 72 ++
>>>> > src/mesa/state_tracker/st_atom_tess.c | 59 ++
>>>> > src/mesa/state_tracker/st_atom_texture.c | 52 ++
>>>> > src/mesa/state_tracker/st_cb_program.c | 58 ++
>>>> > src/mesa/state_tracker/st_context.c | 3 +
>>>> > src/mesa/state_tracker/st_context.h | 8 +-
>>>> > src/mesa/state_tracker/st_draw.c | 2 +
>>>> > src/mesa/state_tracker/st_extensions.c | 21 +
>>>> > src/mesa/state_tracker/st_glsl_to_tgsi.cpp | 159 +++-
>>>> > src/mesa/state_tracker/st_program.c | 495 ++++++++++--
>>>> > src/mesa/state_tracker/st_program.h | 122 ++-
>>>> > 111 files changed, 5956 insertions(+), 673 deletions(-)
>>>> > create mode 100644 src/glsl/lower_tess_level.cpp
>>>> > create mode 100644 src/mapi/glapi/gen/ARB_tessellation_shader.xml
>>>> > create mode 100644 src/mesa/state_tracker/st_atom_tess.c
>>>> >
>>>> > Marek
>>>> _______________________________________________
>>>> mesa-dev mailing list
>>>> mesa-dev at lists.freedesktop.org
>>>> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
>>>
>>>
>>>
>>> _______________________________________________
>>> mesa-dev mailing list
>>> mesa-dev at lists.freedesktop.org
>>> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
>>>
>>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
More information about the mesa-dev
mailing list