mesa: Dynamically allocate the matrix stack.
authorEric Anholt <eric@anholt.net>
Tue, 2 Aug 2016 19:48:47 +0000 (12:48 -0700)
committerEric Anholt <eric@anholt.net>
Thu, 4 Aug 2016 15:52:11 +0000 (08:52 -0700)
commit49741e1cd23c726f1956fe2b2e78a85ba8482385
tree5eea90229c056c46195556d28acae24b136e47d8
parent2a808219b3f9a50bc5bf3c5290db6a55cd707de7
mesa: Dynamically allocate the matrix stack.

By allocating and initializing the matrices at context creation, the OS
couldn't even overcommit the pages.  This saves about 63k (out of 946k) of
maximum memory size according to massif on simulated vc4
glsl-algebraic-add-add-1.  It also means we could potentially relax the
maximum stack sizes, but that should be a separate commit.

v2: Drop redundant Top update, explain why the stack is small at init
    time.

Reviewed-by: Brian Paul <brianp@vmware.com>
src/mesa/main/matrix.c
src/mesa/main/mtypes.h