documentation updates, dial gcc -g flag up to 11
replay: update remaining etna_vidmem_unlock call in cube_etna2_gc2000 to new API

Commit 2fcaa58c3e0e763c78bb1d28a3d63380f5e65ce2 introduced an additional
(optional) queue parameter to etna_vidmem_unlock. Update the remaining
callsite in cube_etna2_gc2000.
tools: fix word size in etnaviv_gdb

There was an error when using gpu-trace on 64 bit host systems
driver: add additional debug flags `flush_all` and `finish_all`
driver: fix MSAA hang issue

Changing the MSAA mode clobbers PS.INPUT_COUNT.
Hence make sure that it is set before all other state.
etnaviv: Fixed typo in comment in Makefile
include_v4_uapi: Removed debug options

These are now internal to the kernel driver, no longer part of the ABI.
include_v4_uapi: Added hardware performance counters struct

It is needed when profiling support is enabled.
driver: fix cousins of MSAA hang bug

- Change the order in `reset_context` as well
- Clobber PS INPUTS state when MSAA samples changed to make sure it's
  always written, as we don't know the current value anymore.
driver: make viewport affect clipping rectangle as well

I'm not sure this is defined by the GL spec, but makes it behave
more like other GL drivers and fixes missile cam in d2x.
driver: rename a few utility functions

Add etna_ prefix to utility functions to make it clearer where they come
from.
driver: Set up early depth

And some documentation changes.
utils: move utilities such as viv_gpu_top to separate directory

Split them off from fb and replay, where they don't belong.
Some of these are useful beyond reverse engineering.

Also add a few utilities not part of etna_viv before:

- viv_registers: print contents of all (non-crashing on read) GPU registers
- viv_watch: watch debug registers
gallium: rename to minigallium

Name makes it clearer that it is a subset for internal use only.
driver: Set bit 24 of PE_DEPTH_CONFIG correctly

Bypasses ZS buffer write when stencil and depth is not written.
minor documentation and utils updates
etnaviv: Fix destination stride issue

This solves the texturing problems in Ken's labyrinth
(and many other applications, probably).
driver: fix hang issue when rendering large quad after clear

Synchronization appears to be needed after clear.
driver: reduce per-draw GPU overhead a bit

Send new vertex elements state only when changed.
driver: CSO optimizations

- Copy small CSOs instead of dereferencing pointers. We do need to keep
  around the pointer as well to save state for the blitter, but apart
  from that, the state weaving no longer dereferences pointers which
  should be more cache efficient.

- Add likely/unlikely based on the likelyness of a certain piece of
  state changing. Used some guesswork here, eventually it may be useful
  to profile it under various workloads.