Merge pull request #9 from mike-sc/gc880

Mesa gc880 support
fb: no need to enable blending in stencil test
documentation and comment updates
driver: check against maximum texture size

Check against the maximum texture or render target size when creating a
resource.
fb_rawshader: fix compile warnings
driver: fix build with profiling
driver: check shader limits

Add a check for the number of instructions, uniforms, varyings and
temporary registers. This will avoid some crashes.
rnndb: figure out LITP instruction
comment updates
driver: correct etna_compile_check_limits

number of uniforms was checked against max number of registers: oops
Thanks to Ben Brewer for noticing.
tools: add gpu-trace gdb command

This command traces and dumps all submitted command buffers, along with the
physcial address of each command. This should come in handy for
searching back the physical address that the rendering is stuck on
according to the kernel.
fb: add missing viv_gpu_top.c

Doesn't actually work yet, but this fixes the build.
tools: improve gpu-trace

Use our old friend memcpy() to make temporary copy of
command buffer memory in client process.
No longer needs cooporation from target, which means the hacky
_viv_read_u32 can be removed again.
An added advantage is that this is *much* faster.
driver: implement LITP instruction

This instruction is never generated by the GLSL path, but it
can be generated by the GLES1 fixed pipeline shaders.
trivial comment + demo updates
driver: split off rawshader

Evict rawshader code and move it to grabbag-of-demos-stuff in `lib/`
as it is only used for the rawshader demos and for testing and thus
does not belong in the mesa driver.
tools: add output to file option to gdb gpu-trace
driver: don't make TS for render targets

This path is not stable, so disable it:
- hangs: TS optimization seems to cause hangs with the blitter
  (maybe because it never clears)
- corruption: we would need a resolve-to-self step before using the surface
  as a texture because the cleared tiles will not be filled
driver: implement TEXP

Projective texturing instruction, mostly generated by GLES1
compatibility shaders.
ps_sandbox: use TRIANGLE_FAN

This primitive had gone untested until now.
Just like the Gallium blitter use a TRIANGLE_FAN to render a quad.
Also cleans up the code of this demo as no longer an index buffer is
needed.