URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=4a078516b6e9dd6876aaa2c95f0a98b7f5e08d19
Author: Eric Anholt <[email protected]>
Date:   Wed Jun 27 13:46:26 2012 -0700

    i965: Enable uniform buffer objects on gen6+.
    
    Reviewed-by: Kenneth Graunke <[email protected]>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=04871058eb01c5b51a0180055e7dbdc967f56604
Author: Eric Anholt <[email protected]>
Date:   Mon Jun 25 14:55:01 2012 -0700

    i965/vs: Add support for loading uniform buffer variables as pull constants.
    
    Unlike the FS side in the previous commit, this does variable indexing just
    fine, using the same code as we used for other variable-indexed pull
    constants.
    
    Reviewed-by: Kenneth Graunke <[email protected]>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=90de96ff0d6d54ba0f9a337a6a107acf4134682d
Author: Eric Anholt <[email protected]>
Date:   Wed Jun 20 15:55:13 2012 -0700

    i965/fs: Add support for loading uniform buffer variables as pull constants.
    
    Variable array indexing isn't finished, because the lowering pass
    turns it all into conditional moves of constant index accesses so I
    can't test it.
    
    Reviewed-by: Kenneth Graunke <[email protected]>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=bb020d09c382285210a5aebe412ddabfad19e4a0
Author: Eric Anholt <[email protected]>
Date:   Mon Jun 25 14:36:28 2012 -0700

    i965/vs: Add a surface index to VS_OPCODE_PULL_CONSTANT instructions.
    
    Similar to the previous commit for the fragment shader, now we have a buffer
    index and an offset.
    
    Reviewed-by: Kenneth Graunke <[email protected]>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=454dc83f66643e66ea7ee9117368211f0cfe84d7
Author: Eric Anholt <[email protected]>
Date:   Wed Jun 20 15:41:14 2012 -0700

    i965/fs: Communicate the pull constant block read parameters through 
fs_regs.
    
    I wanted to add the surface index as a variable value for UBO support,
    and a reg seemed like the obvious way to go.  This exposes more of the
    information to CSE, which we'll probably want to apply to pull
    constant loads for UBOs eventually (you might access 4 floats in a
    row, each of which would produce an oword block read of the same
    block).
    
    Reviewed-by: Kenneth Graunke <[email protected]>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=25d2bf3845e9a6faaef8d808c1255ec57dc71dba
Author: Eric Anholt <[email protected]>
Date:   Wed Jun 20 12:29:29 2012 -0700

    i965: Bind UBOs as surfaces like we do for pull constants.
    
    v2: Comment fix, drop extraneous parens (review by Kenneth)
    
    Reviewed-by: Kenneth Graunke <[email protected]>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=5bffbd7ba2ba2ff21469b2a69a0ed67f0802fec7
Author: Eric Anholt <[email protected]>
Date:   Wed Jun 20 13:03:04 2012 -0700

    i965: Add an offset argument to constant buffer setup.
    
    We'll use this for UBO surfaces.
    
    Reviewed-by: Kenneth Graunke <[email protected]>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=5fc5b29a543a7a229bf03f8f9f37ed4c592a67e7
Author: Eric Anholt <[email protected]>
Date:   Tue Jul 31 14:28:05 2012 -0700

    mesa: Add support for glUniformBlockBinding() in display lists.
    
    Fixes piglit GL_ARB_uniform_buffer_object/dlist.
    
    v2: Use the .ui fields instead of .i for type consistency (review by Brian
        Paul)
    
    Reviewed-by: Kenneth Graunke <[email protected]>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=bfa046b5f2e50a0297ecb7e325395367362c4c39
Author: Eric Anholt <[email protected]>
Date:   Tue Jul 31 12:46:25 2012 -0700

    mesa: Unbind uniform buffer bindings on glDeleteBuffers().
    
    Fixes piglit GL_ARB_uniform_buffer_object/deletebuffers.
    
    Reviewed-by: Kenneth Graunke <[email protected]>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=1eb3c06ae82cc962c5d867238acd089f833c2337
Author: Eric Anholt <[email protected]>
Date:   Thu Jul 26 16:56:49 2012 -0700

    mesa: Default to GL 3.1's limits on uniform blocks.
    
    The ARB spec lets you get away with the default block counting against the
    blocks for combined size limits.  The core spec says you need to be able to
    support the maximum size of default block *and* the maximum size of each
    uniform block.  I see no reason that any driver would have a problem with
    that.
    
    Fixes gl 3.1/minmax (with an associated fix to the test)
    
    Reviewed-by: Kenneth Graunke <[email protected]>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=803262a5f55ca5b94a09dfe8f35e64a579778209
Author: Eric Anholt <[email protected]>
Date:   Thu Jul 26 13:11:05 2012 -0700

    glsl: Refuse to parse uniform block declarations when UBOs aren't available.
    
    Fixes piglit
    GL_ARB_uniform_buffer_object/compiler/extension-disabled-block.frag
    
    Reviewed-by: Kenneth Graunke <[email protected]>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=e45f1b11c081a7b965bf58539d2dbcc231d543f4
Author: Eric Anholt <[email protected]>
Date:   Wed Jul 25 12:45:13 2012 -0700

    glsl: Align GL_UNIFORM_BLOCK_DATA_SIZE according to std140 rules.
    
    Fixes piglit GL_ARB_uniform_buffer_object/data-size test.
    
    Reviewed-by: Kenneth Graunke <[email protected]>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=86e0045578cd8d8be7736a8f56e2b51d61bda32a
Author: Eric Anholt <[email protected]>
Date:   Mon Jul 23 14:31:42 2012 -0700

    glsl: Only flag RowMajor on matrix-type variables.
    
    We were only propagating it to the API when the variable was a matrix type,
    but we were still tripping over it in lower_ubo_reference when it was set 
on a
    vector.
    
    Reviewed-by: Kenneth Graunke <[email protected]>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=ffb2d430596258aaeaf3b7ae7f295036ea4094d5
Author: Eric Anholt <[email protected]>
Date:   Mon Jul 23 14:11:38 2012 -0700

    glsl: Fix calculation of std140 offset alignment for mat2s.
    
    We were getting the base offset of a vec2, not of a vec2[2] like the quoted
    spec text says we should.
    
    v2: Fix swapped then/else cases.
    
    Reviewed-by: Kenneth Graunke <[email protected]>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=300315fe69ba275dda8a4786783c2bdd007d0758
Author: Eric Anholt <[email protected]>
Date:   Mon Jul 23 11:05:11 2012 -0700

    glsl: Fix glGetActiveUniformsiv(GL_UNIFORM_BLOCK_INDEX).
    
    Previously, we were returning the index into the UniformBlocks of one of the
    linked shaders, when it's supposed to be the program global index.
    
    Fixes piglit getactiveuniformsiv-uniform_block_index.
    
    Reviewed-by: Kenneth Graunke <[email protected]>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=af3fc6bb2836ce545c624bce2b47c3fd8cf4f9fa
Author: Eric Anholt <[email protected]>
Date:   Fri Jul 20 16:49:15 2012 -0700

    ir_to_mesa: Don't whack the ->location field of uniform block variables.
    
    Fixes some failures in GL_ARB_uniform_buffer_object/maxblocks.
    
    Reviewed-by: Kenneth Graunke <[email protected]>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=56e82e30cb60368bb3605f95130732f5edbab0a0
Author: Eric Anholt <[email protected]>
Date:   Tue Jun 26 13:17:08 2012 -0700

    mesa: Make glBindBufferBase/glBindBufferRange() work on just-genned names.
    
    In between glGenBuffers() and glBindBuffer(), the buffer object points to 
this
    dummy buffer with a name of 0, and a glBindBufferBase() would point to that.
    It seems pretty clear, given that glBindBufferBase() only cares about the
    current size of the buffer at render time, that it should bind up the buffer
    that you passed in instead of pointing it at this useless dummy buffer.
    
    However, what should glBindBufferRange() do?  As of this patch, it will
    promote the genned buffer to a proper buffer like it had been
    glBindBuffer()ed, and then detect that the size is greater than the buffer's
    current size of 0 and throw INVALID_VALUE.  It seems like the most 
reasonable
    answer here.
    
    Note that this also changes the behavior of these two on non-glGenBuffers() 
bo
    names.  We haven't yet set up the error throwing for glBindBuffers() on gl
    3.1+, and my assumption is that these two functions should inherit their
    behavior on un-genned names from glBindBuffers().
    
    Reviewed-by: Kenneth Graunke <[email protected]>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=a75f2681d26aecad185895c1c2f13dd542281ff9
Author: Eric Anholt <[email protected]>
Date:   Wed Jul 11 08:26:31 2012 -0700

    glsl: Add a lowering pass to turn complicated UBO references to vector 
loads.
    
    v2: Reduce the impenetrable code in emit_ubo_loads() by 23 lines by keeping
        the ir_variable as the variable part of the offset from handle_rvalue(),
        and track the constant offsets from that with a plain old integer value,
        avoiding a bunch of temporary variables in the array and struct 
handling.
        Also, fix file description doxygen.
    v3: Fix a row vs col typo, and fix spelling in a comment.
    
    Reviewed-by: Eric Anholt <[email protected]>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=8c2a9838355cfd02356bf7b22eead408d909fe25
Author: Eric Anholt <[email protected]>
Date:   Fri Jul 20 14:10:44 2012 -0700

    glsl: Add a variant of the rvalue visitor for handle_rvalue() on the way 
down.
    
    For the UBO lowering pass, I want to see the whole dereference chain for
    replacing, not the innermost ir_dereference_variable.
    
    Reviewed-by: Kenneth Graunke <[email protected]>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=2ea3ab14f2182978f471674c9dfce029d37f70a7
Author: Eric Anholt <[email protected]>
Date:   Mon Jul 9 15:52:53 2012 -0700

    glsl: Add a "ubo_load" expression type for fetches from UBOs.
    
    Drivers will probably want to be able to take UBO references in a
    shader like:
    
            uniform ubo1 {
                    float a;
                    float b;
                    float c;
                    float d;
            }
    
            void main() {
                 gl_FragColor = vec4(a, b, c, d);
            }
    
    and generate a single aligned vec4 load out of the UBO.  For intel,
    this involves recognizing the shared offset of the aligned loads and
    CSEing them out.  Obviously that involves breaking things down to
    loads from an offset from a particular UBO first.  Thus, the driver
    doesn't want to see
    
        variable_ref(ir_variable("a")),
    
    and even more so does it not want to see
    
        array_ref(record_ref(variable_ref(ir_variable("a")),
              "field1"), variable_ref(ir_variable("i"))).
    
    where a.field1[i] is a row_major matrix.
    
    Instead, we're going to make a lowering pass to break UBO references
    down to expressions that are obvious to codegen, and amenable to
    merging through CSE.
    
    v2: Fix some partial thoughts in the ir_binop comment (review by Kenneth)
    
    Reviewed-by: Ian Romanick <[email protected]>
    Reviewed-by: Kenneth Graunke <[email protected]>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=71ba6de342b88dcf8ed3aa347da157b7724230e7
Author: Eric Anholt <[email protected]>
Date:   Fri Jul 20 16:57:22 2012 -0700

    glsl: Fix a reference to UniformBlocks during uniform linking.
    
    When converting var->location from pointing at the program's UniformBlocks 
to
    pointing at the linked shader's UniformBlocks, I missed this change.  It
    usually worked out in the end because the two lists happen to be the same in
    many testcases.
    
    Fixes a valgrind complaint on
    oglconform ubo-compile.cpp advanced.std140.2stage
    
    Reviewed-by: Ian Romanick <[email protected]>
    Reviewed-by: Kenneth Graunke <[email protected]>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=7e42302e7188a783221d2b17a4bb07ee89cae367
Author: Eric Anholt <[email protected]>
Date:   Mon Jul 9 15:47:33 2012 -0700

    glsl: Update the notes on adding a new expression type.
    
    Reviewed-by: Ian Romanick <[email protected]>
    Reviewed-by: Kenneth Graunke <[email protected]>

_______________________________________________
mesa-commit mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to