Mesa (master): 23 new commits

Iago Toral Quiroga itoral at kemper.freedesktop.org
Mon Jun 30 06:11:30 UTC 2014


URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=f3c5b2f7d08f8a2a41df0a224cd6600ce4260fa1
Author: Samuel Iglesias Gonsalvez <siglesias at igalia.com>
Date:   Fri Jun 13 10:24:40 2014 +0200

    docs: mark "Geometry shader multiple streams" as done for i965
    
    Signed-off-by: Samuel Iglesias Gonsalvez <siglesias at igalia.com>
    Reviewed-by: Chris Forbes <chrisf at ijw.co.nz>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=5b3492fa3ff1738fffbc8d05cf39b6e10da3dc39
Author: Iago Toral Quiroga <itoral at igalia.com>
Date:   Fri Jun 13 11:13:24 2014 +0200

    i965: Enable vertex streams up to MAX_VERTEX_STREAMS.
    
    Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=0b84fa2c52cbaff5963b7d7aa4f27c316fe0a89c
Author: Iago Toral Quiroga <itoral at igalia.com>
Date:   Tue Jun 10 13:50:32 2014 +0200

    mesa: Enable simultaneous queries on different streams.
    
    It should be possible to query the number of primitives written to each
    individual stream by a geometry shader in a single draw call. For that
    we need to have up to MAX_VERTEX_STREAM separate query objects.
    
    Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=3178d2474ae5bdd1102fb3d76a60d1d63c961ff5
Author: Iago Toral Quiroga <itoral at igalia.com>
Date:   Tue Jun 17 13:45:18 2014 +0200

    i965: Implement GL_PRIMITIVES_GENERATED with non-zero streams.
    
    So far we have been using CL_INVOCATION_COUNT to resolve this query but this
    is no good with streams, as only stream 0 reaches the clipping stage. Instead
    we will use SO_PRIM_STORAGE_NEEDED which can keep track of the primitives sent
    to each individual stream.
    
    Since SO_PRIM_STORAGE_NEEDED is related to the SOL stage and according to
    ARB_transform_feedback3 we need to be able to query primitives generated in
    each stream whether transform feedback is active or not what we do is to
    enable the SOL unit even if transform feedback is not active but disable all
    output buffers in that case. This effectively disables transform feedback
    but permits activation of statistics enabling SO_PRIM_STORAGE_NEEDED even
    when transform feedback is not active.
    
    Reviewed-by: Chris Forbes <chrisf at ijw.co.nz>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=a374685f092cbe57aae89e6977b8bdde0c8ec623
Author: Iago Toral Quiroga <itoral at igalia.com>
Date:   Tue Jun 10 13:29:40 2014 +0200

    i965: Implement GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN with non-zero streams.
    
    Reviewed-by: Chris Forbes <chrisf at ijw.co.nz>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=ecd9960430a52cfea624cd836d68ee2c39738410
Author: Iago Toral Quiroga <itoral at igalia.com>
Date:   Tue Jun 10 13:28:38 2014 +0200

    mesa: Include stream information in indexed queries.
    
    Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=0e58a3ef2a6dd029e730c7d0dd14e29a5210b3c9
Author: Samuel Iglesias Gonsalvez <siglesias at igalia.com>
Date:   Tue Jun 10 08:45:44 2014 +0200

    glsl: include streamId when reading/printing ir_variable IR.
    
    Signed-off-by: Samuel Iglesias Gonsalvez <siglesias at igalia.com>
    Reviewed-by: Chris Forbes <chrisf at ijw.co.nz>
    Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=a16043ba57501d3d91d50291135775e6650818fa
Author: Iago Toral Quiroga <itoral at igalia.com>
Date:   Sun Jun 8 13:16:26 2014 +0200

    glsl: include streamId when reading/printing emit-vertex and end-primitive IR.
    
    Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=5d562588a5a1067cf80148ddad3815fdba816151
Author: Iago Toral Quiroga <itoral at igalia.com>
Date:   Tue Jun 3 16:38:44 2014 +0200

    i965/gs: Set control data bits for vertices emitted in stream mode.
    
    In stream mode we have to set control data bits with the StreamID
    information for every vertex.
    
    Reviewed-by: Chris Forbes <chrisf at ijw.co.nz>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=7589683c97442239295e700cbea17e82736f1f27
Author: Iago Toral Quiroga <itoral at igalia.com>
Date:   Mon Jun 16 16:09:53 2014 +0200

    glsl: Validate vertex emission in geometry shaders.
    
    Check if non-zero streams are used. Fail to link if emitting to unsupported
    streams or emitting to non-zero streams with output type other than GL_POINTS.
    
    Reviewed-by: Chris Forbes <chrisf at ijw.co.nz>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=e877aadde065de567da53f67ea8d60e19825693d
Author: Iago Toral Quiroga <itoral at igalia.com>
Date:   Fri Jun 20 10:43:57 2014 +0200

    glsl: Add support for EmitStreamVertex() and EndStreamPrimitive().
    
    Reviewed-by: Chris Forbes <chrisf at ijw.co.nz>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=4b3fc21032a63f483d381c36c8e41bf3540ebfcc
Author: Iago Toral Quiroga <itoral at igalia.com>
Date:   Fri Jun 20 10:38:53 2014 +0200

    glsl: Modify ir_end_primitive to have a stream.
    
    This will be necessary to implement EndStreamPrimitive().
    EndPrimitive() will produce an ir_end_primitive with the default stream 0.
    
    Reviewed-by: Chris Forbes <chrisf at ijw.co.nz>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=8639effefeb8c06beedbfcc294694b6bb72db882
Author: Iago Toral Quiroga <itoral at igalia.com>
Date:   Fri Jun 20 10:26:29 2014 +0200

    glsl: Modify ir_emit_vertex to have a stream.
    
    This will be necessary to implement EmitStreamVertex().
    EmitVertex() will produce an ir_emit_vertex with the default stream 0.
    
    Reviewed-by: Chris Forbes <chrisf at ijw.co.nz>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=9650293b51b23b86f4fcf6875e1801555fa235d0
Author: Iago Toral Quiroga <itoral at igalia.com>
Date:   Tue Jun 3 12:25:08 2014 +0200

    i965/gs: Set number of control data bits for stream mode.
    
    If the geometry shader is indeed using streams then we need 2 control data
    bits per vertex for the StreamID. If the shader is not using streams then
    we don't need control data bits.
    
    Reviewed-by: Chris Forbes <chrisf at ijw.co.nz>
    Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=6d3632c9c9c58f8fe1bae26871432342ccaaaf4b
Author: Iago Toral Quiroga <itoral at igalia.com>
Date:   Fri Jun 6 12:31:30 2014 +0200

    glsl: Store info about geometry shaders that emit vertices to non-zero streams.
    
    On Intel hardware when a geometry shader outputs GL_POINTS primitives we
    only need to emit vertex control bits if it emits vertices to non-zero
    streams, so use a flag to track this.
    
    This flag will be set to TRUE when a geometry shader calls EmitStreamVertex()
    or EndStreamPrimitive() with a non-zero stream parameter in a later patch.
    
    Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=598c2e2c83447cf222f96f833569eeb0bd179871
Author: Iago Toral Quiroga <itoral at igalia.com>
Date:   Fri Jun 6 13:28:32 2014 +0200

    glsl: Only geometry shader outputs can be associated with non-zero streams.
    
    This should be ensured by the parser, so assert on that.
    
    Reviewed-by: Chris Forbes <chrisf at ijw.co.nz>
    Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=e2dd717616757a74ab2835602dd7c1a6256805ed
Author: Iago Toral Quiroga <itoral at igalia.com>
Date:   Fri Jun 6 09:44:34 2014 +0200

    glsl: Two varyings can't write to the same buffer from different streams.
    
    If this is detected, fail to link.
    
    Reviewed-by: Chris Forbes <chrisf at ijw.co.nz>
    Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=1e1f071d25d67b7e82ac2248dbda419f992b10d7
Author: Iago Toral Quiroga <itoral at igalia.com>
Date:   Fri Jun 6 09:43:04 2014 +0200

    glsl: Add methods to retrive a varying's name and streamId.
    
    Reviewed-by: Chris Forbes <chrisf at ijw.co.nz>
    Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=02fd80e16018d44374063bae703352c464fdec2c
Author: Iago Toral Quiroga <itoral at igalia.com>
Date:   Thu Jun 5 11:36:56 2014 +0200

    glsl: Fail to link if inter-stage input/outputs are not assigned to stream 0
    
    Outputs that are linked to inputs in the next stage must be output to stream 0,
    otherwise we should fail to link.
    
    Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=b908e85ed3f1c7601c2e56f85ff676b606af10b5
Author: Iago Toral Quiroga <itoral at igalia.com>
Date:   Thu Jun 5 10:47:01 2014 +0200

    glsl: Assign GLSL StreamIds to transform feedback outputs.
    
    Inter-shader outputs must be on stream 0, which is the default.
    
    Reviewed-by: Chris Forbes <chrisf at ijw.co.nz>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=37d795317edd2086a4962416c627dfadfc497f78
Author: Iago Toral Quiroga <itoral at igalia.com>
Date:   Thu Jun 5 08:33:59 2014 +0200

    i965: Enable transform feedback for streams > 0
    
    Configure hardware to read vertex data for all streams and have all streams
    write their varyings to the corresponsing output buffers.
    
    Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=f20c7230399f5d505631dafab4252d504323d0a8
Author: Iago Toral Quiroga <itoral at igalia.com>
Date:   Thu Jun 5 08:31:40 2014 +0200

    mesa: add StreamId information to transform feedback outputs.
    
    For now initialized to the default stream 0.
    
    Reviewed-by: Chris Forbes <chrisf at ijw.co.nz>
    Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=a7e6ec68985dda9ca70c3eeb4fa9d807b67f7c99
Author: Samuel Iglesias Gonsalvez <siglesias at igalia.com>
Date:   Tue Jun 10 08:45:43 2014 +0200

    glsl: Add parsing support for multi-stream output in geometry shaders.
    
    This implements parsing requirements for multi-stream support in
    geometry shaders as defined in ARB_gpu_shader5.
    
    Signed-off-by: Samuel Iglesias Gonsalvez <siglesias at igalia.com>
    Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>




More information about the mesa-commit mailing list