From: Mateja Marjanovic <address@hidden>
Add support for MSA instructions while executing QEMU on a
machine that uses big endian MIPS CPU. Also change the
implementation of helpers for MSA instructions
ST.<B|H|W|D>, LD.<B|H|W|D>, INSERT.<B|H|W> (and D on MIPS64),
COPY_S.<B|H|W> (and D on MIPS64) and COPY_U.<B|H> (and W
on MIPS64). Instead of using a switch in a helper, which is
called many times, put a switch in translate.c file, which
is called only a few times.
This paragraph suggests that there are essentially two independent
changes in this series (one for big endian host, another for refactoring
helpers), while in reality they are closely related. You should have
started the second sentence with "This is achieved by changing the
implementation of helpers for...".
v3:
- Unroll loops in ST.<B|H|W|D> and LD.<B|H|W|D>
instructions.
- Eliminate macro that generates the helpers for
the ST.<B|H|W|D> and LD.<B|H|W|D> instructions,
and add four helpers for each (for byte,
halfword, word and doubleword).
- Eliminate the helpers for INSERT.<B|H|W|D>,
COPY_S.<B|H|W|D> and COPY_U.<B|H|W> and add
four (three in case of COPY_U) helpers for
each one.
The cover letter should contain the complete series history.