etnaviv: Switch to isaspec based encoder
What does this MR do and why?
Drop our custom (and too simple) assembler and switches to one that is powered by isaspec. This opens the door
- to model special cases for instructions like a
branch
with no src's to a newjump
instruction - to do the nir src -> instruction src mapping in isaspec
- to support different instruction encodings (extended instructions and EVIS instructions)
- to add meta information to instructions
- to support special instructions that are used in compiler unit tests
- ...
The list goes on and on
One important thing to note: this MR passes the manual etnaviv related CI steps.