mirror of
https://git.code.sf.net/p/quake/quakeforge
synced 2024-11-29 23:52:22 +00:00
dc4df49fff
While not always generated (yet?) the tests are at least in. Just not sure about auto-generated tests that can't be hand-edited.
1846 lines
53 KiB
C
1846 lines
53 KiB
C
#include "head.c"
|
|
|
|
static pr_vec4_t swizzle_f_init[] = {
|
|
{ 1, 2, 3, 4 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
};
|
|
static pr_vec4_t swizzle_f_expect[] = {
|
|
{ 1, 2, 3, 4 },
|
|
{ 1, 1, 1, 1 },
|
|
{ 2, 1, 1, 1 },
|
|
{ 3, 1, 1, 1 },
|
|
{ 4, 1, 1, 1 },
|
|
{ 1, 2, 1, 1 },
|
|
{ 2, 2, 1, 1 },
|
|
{ 3, 2, 1, 1 },
|
|
{ 4, 2, 1, 1 },
|
|
{ 1, 3, 1, 1 },
|
|
{ 2, 3, 1, 1 },
|
|
{ 3, 3, 1, 1 },
|
|
{ 4, 3, 1, 1 },
|
|
{ 1, 4, 1, 1 },
|
|
{ 2, 4, 1, 1 },
|
|
{ 3, 4, 1, 1 },
|
|
{ 4, 4, 1, 1 },
|
|
{ 1, 1, 2, 1 },
|
|
{ 2, 1, 2, 1 },
|
|
{ 3, 1, 2, 1 },
|
|
{ 4, 1, 2, 1 },
|
|
{ 1, 2, 2, 1 },
|
|
{ 2, 2, 2, 1 },
|
|
{ 3, 2, 2, 1 },
|
|
{ 4, 2, 2, 1 },
|
|
{ 1, 3, 2, 1 },
|
|
{ 2, 3, 2, 1 },
|
|
{ 3, 3, 2, 1 },
|
|
{ 4, 3, 2, 1 },
|
|
{ 1, 4, 2, 1 },
|
|
{ 2, 4, 2, 1 },
|
|
{ 3, 4, 2, 1 },
|
|
{ 4, 4, 2, 1 },
|
|
{ 1, 1, 3, 1 },
|
|
{ 2, 1, 3, 1 },
|
|
{ 3, 1, 3, 1 },
|
|
{ 4, 1, 3, 1 },
|
|
{ 1, 2, 3, 1 },
|
|
{ 2, 2, 3, 1 },
|
|
{ 3, 2, 3, 1 },
|
|
{ 4, 2, 3, 1 },
|
|
{ 1, 3, 3, 1 },
|
|
{ 2, 3, 3, 1 },
|
|
{ 3, 3, 3, 1 },
|
|
{ 4, 3, 3, 1 },
|
|
{ 1, 4, 3, 1 },
|
|
{ 2, 4, 3, 1 },
|
|
{ 3, 4, 3, 1 },
|
|
{ 4, 4, 3, 1 },
|
|
{ 1, 1, 4, 1 },
|
|
{ 2, 1, 4, 1 },
|
|
{ 3, 1, 4, 1 },
|
|
{ 4, 1, 4, 1 },
|
|
{ 1, 2, 4, 1 },
|
|
{ 2, 2, 4, 1 },
|
|
{ 3, 2, 4, 1 },
|
|
{ 4, 2, 4, 1 },
|
|
{ 1, 3, 4, 1 },
|
|
{ 2, 3, 4, 1 },
|
|
{ 3, 3, 4, 1 },
|
|
{ 4, 3, 4, 1 },
|
|
{ 1, 4, 4, 1 },
|
|
{ 2, 4, 4, 1 },
|
|
{ 3, 4, 4, 1 },
|
|
{ 4, 4, 4, 1 },
|
|
{ 1, 1, 1, 2 },
|
|
{ 2, 1, 1, 2 },
|
|
{ 3, 1, 1, 2 },
|
|
{ 4, 1, 1, 2 },
|
|
{ 1, 2, 1, 2 },
|
|
{ 2, 2, 1, 2 },
|
|
{ 3, 2, 1, 2 },
|
|
{ 4, 2, 1, 2 },
|
|
{ 1, 3, 1, 2 },
|
|
{ 2, 3, 1, 2 },
|
|
{ 3, 3, 1, 2 },
|
|
{ 4, 3, 1, 2 },
|
|
{ 1, 4, 1, 2 },
|
|
{ 2, 4, 1, 2 },
|
|
{ 3, 4, 1, 2 },
|
|
{ 4, 4, 1, 2 },
|
|
{ 1, 1, 2, 2 },
|
|
{ 2, 1, 2, 2 },
|
|
{ 3, 1, 2, 2 },
|
|
{ 4, 1, 2, 2 },
|
|
{ 1, 2, 2, 2 },
|
|
{ 2, 2, 2, 2 },
|
|
{ 3, 2, 2, 2 },
|
|
{ 4, 2, 2, 2 },
|
|
{ 1, 3, 2, 2 },
|
|
{ 2, 3, 2, 2 },
|
|
{ 3, 3, 2, 2 },
|
|
{ 4, 3, 2, 2 },
|
|
{ 1, 4, 2, 2 },
|
|
{ 2, 4, 2, 2 },
|
|
{ 3, 4, 2, 2 },
|
|
{ 4, 4, 2, 2 },
|
|
{ 1, 1, 3, 2 },
|
|
{ 2, 1, 3, 2 },
|
|
{ 3, 1, 3, 2 },
|
|
{ 4, 1, 3, 2 },
|
|
{ 1, 2, 3, 2 },
|
|
{ 2, 2, 3, 2 },
|
|
{ 3, 2, 3, 2 },
|
|
{ 4, 2, 3, 2 },
|
|
{ 1, 3, 3, 2 },
|
|
{ 2, 3, 3, 2 },
|
|
{ 3, 3, 3, 2 },
|
|
{ 4, 3, 3, 2 },
|
|
{ 1, 4, 3, 2 },
|
|
{ 2, 4, 3, 2 },
|
|
{ 3, 4, 3, 2 },
|
|
{ 4, 4, 3, 2 },
|
|
{ 1, 1, 4, 2 },
|
|
{ 2, 1, 4, 2 },
|
|
{ 3, 1, 4, 2 },
|
|
{ 4, 1, 4, 2 },
|
|
{ 1, 2, 4, 2 },
|
|
{ 2, 2, 4, 2 },
|
|
{ 3, 2, 4, 2 },
|
|
{ 4, 2, 4, 2 },
|
|
{ 1, 3, 4, 2 },
|
|
{ 2, 3, 4, 2 },
|
|
{ 3, 3, 4, 2 },
|
|
{ 4, 3, 4, 2 },
|
|
{ 1, 4, 4, 2 },
|
|
{ 2, 4, 4, 2 },
|
|
{ 3, 4, 4, 2 },
|
|
{ 4, 4, 4, 2 },
|
|
{ 1, 1, 1, 3 },
|
|
{ 2, 1, 1, 3 },
|
|
{ 3, 1, 1, 3 },
|
|
{ 4, 1, 1, 3 },
|
|
{ 1, 2, 1, 3 },
|
|
{ 2, 2, 1, 3 },
|
|
{ 3, 2, 1, 3 },
|
|
{ 4, 2, 1, 3 },
|
|
{ 1, 3, 1, 3 },
|
|
{ 2, 3, 1, 3 },
|
|
{ 3, 3, 1, 3 },
|
|
{ 4, 3, 1, 3 },
|
|
{ 1, 4, 1, 3 },
|
|
{ 2, 4, 1, 3 },
|
|
{ 3, 4, 1, 3 },
|
|
{ 4, 4, 1, 3 },
|
|
{ 1, 1, 2, 3 },
|
|
{ 2, 1, 2, 3 },
|
|
{ 3, 1, 2, 3 },
|
|
{ 4, 1, 2, 3 },
|
|
{ 1, 2, 2, 3 },
|
|
{ 2, 2, 2, 3 },
|
|
{ 3, 2, 2, 3 },
|
|
{ 4, 2, 2, 3 },
|
|
{ 1, 3, 2, 3 },
|
|
{ 2, 3, 2, 3 },
|
|
{ 3, 3, 2, 3 },
|
|
{ 4, 3, 2, 3 },
|
|
{ 1, 4, 2, 3 },
|
|
{ 2, 4, 2, 3 },
|
|
{ 3, 4, 2, 3 },
|
|
{ 4, 4, 2, 3 },
|
|
{ 1, 1, 3, 3 },
|
|
{ 2, 1, 3, 3 },
|
|
{ 3, 1, 3, 3 },
|
|
{ 4, 1, 3, 3 },
|
|
{ 1, 2, 3, 3 },
|
|
{ 2, 2, 3, 3 },
|
|
{ 3, 2, 3, 3 },
|
|
{ 4, 2, 3, 3 },
|
|
{ 1, 3, 3, 3 },
|
|
{ 2, 3, 3, 3 },
|
|
{ 3, 3, 3, 3 },
|
|
{ 4, 3, 3, 3 },
|
|
{ 1, 4, 3, 3 },
|
|
{ 2, 4, 3, 3 },
|
|
{ 3, 4, 3, 3 },
|
|
{ 4, 4, 3, 3 },
|
|
{ 1, 1, 4, 3 },
|
|
{ 2, 1, 4, 3 },
|
|
{ 3, 1, 4, 3 },
|
|
{ 4, 1, 4, 3 },
|
|
{ 1, 2, 4, 3 },
|
|
{ 2, 2, 4, 3 },
|
|
{ 3, 2, 4, 3 },
|
|
{ 4, 2, 4, 3 },
|
|
{ 1, 3, 4, 3 },
|
|
{ 2, 3, 4, 3 },
|
|
{ 3, 3, 4, 3 },
|
|
{ 4, 3, 4, 3 },
|
|
{ 1, 4, 4, 3 },
|
|
{ 2, 4, 4, 3 },
|
|
{ 3, 4, 4, 3 },
|
|
{ 4, 4, 4, 3 },
|
|
{ 1, 1, 1, 4 },
|
|
{ 2, 1, 1, 4 },
|
|
{ 3, 1, 1, 4 },
|
|
{ 4, 1, 1, 4 },
|
|
{ 1, 2, 1, 4 },
|
|
{ 2, 2, 1, 4 },
|
|
{ 3, 2, 1, 4 },
|
|
{ 4, 2, 1, 4 },
|
|
{ 1, 3, 1, 4 },
|
|
{ 2, 3, 1, 4 },
|
|
{ 3, 3, 1, 4 },
|
|
{ 4, 3, 1, 4 },
|
|
{ 1, 4, 1, 4 },
|
|
{ 2, 4, 1, 4 },
|
|
{ 3, 4, 1, 4 },
|
|
{ 4, 4, 1, 4 },
|
|
{ 1, 1, 2, 4 },
|
|
{ 2, 1, 2, 4 },
|
|
{ 3, 1, 2, 4 },
|
|
{ 4, 1, 2, 4 },
|
|
{ 1, 2, 2, 4 },
|
|
{ 2, 2, 2, 4 },
|
|
{ 3, 2, 2, 4 },
|
|
{ 4, 2, 2, 4 },
|
|
{ 1, 3, 2, 4 },
|
|
{ 2, 3, 2, 4 },
|
|
{ 3, 3, 2, 4 },
|
|
{ 4, 3, 2, 4 },
|
|
{ 1, 4, 2, 4 },
|
|
{ 2, 4, 2, 4 },
|
|
{ 3, 4, 2, 4 },
|
|
{ 4, 4, 2, 4 },
|
|
{ 1, 1, 3, 4 },
|
|
{ 2, 1, 3, 4 },
|
|
{ 3, 1, 3, 4 },
|
|
{ 4, 1, 3, 4 },
|
|
{ 1, 2, 3, 4 },
|
|
{ 2, 2, 3, 4 },
|
|
{ 3, 2, 3, 4 },
|
|
{ 4, 2, 3, 4 },
|
|
{ 1, 3, 3, 4 },
|
|
{ 2, 3, 3, 4 },
|
|
{ 3, 3, 3, 4 },
|
|
{ 4, 3, 3, 4 },
|
|
{ 1, 4, 3, 4 },
|
|
{ 2, 4, 3, 4 },
|
|
{ 3, 4, 3, 4 },
|
|
{ 4, 4, 3, 4 },
|
|
{ 1, 1, 4, 4 },
|
|
{ 2, 1, 4, 4 },
|
|
{ 3, 1, 4, 4 },
|
|
{ 4, 1, 4, 4 },
|
|
{ 1, 2, 4, 4 },
|
|
{ 2, 2, 4, 4 },
|
|
{ 3, 2, 4, 4 },
|
|
{ 4, 2, 4, 4 },
|
|
{ 1, 3, 4, 4 },
|
|
{ 2, 3, 4, 4 },
|
|
{ 3, 3, 4, 4 },
|
|
{ 4, 3, 4, 4 },
|
|
{ 1, 4, 4, 4 },
|
|
{ 2, 4, 4, 4 },
|
|
{ 3, 4, 4, 4 },
|
|
{ 4, 4, 4, 4 },
|
|
};
|
|
|
|
static dstatement_t swizzle_f_statements[] = {
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0000, 4 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0001, 8 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0002, 12 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0003, 16 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0004, 20 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0005, 24 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0006, 28 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0007, 32 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0008, 36 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0009, 40 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x000a, 44 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x000b, 48 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x000c, 52 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x000d, 56 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x000e, 60 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x000f, 64 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0010, 68 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0011, 72 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0012, 76 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0013, 80 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0014, 84 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0015, 88 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0016, 92 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0017, 96 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0018, 100 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0019, 104 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x001a, 108 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x001b, 112 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x001c, 116 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x001d, 120 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x001e, 124 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x001f, 128 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0020, 132 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0021, 136 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0022, 140 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0023, 144 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0024, 148 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0025, 152 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0026, 156 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0027, 160 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0028, 164 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0029, 168 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x002a, 172 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x002b, 176 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x002c, 180 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x002d, 184 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x002e, 188 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x002f, 192 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0030, 196 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0031, 200 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0032, 204 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0033, 208 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0034, 212 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0035, 216 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0036, 220 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0037, 224 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0038, 228 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0039, 232 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x003a, 236 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x003b, 240 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x003c, 244 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x003d, 248 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x003e, 252 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x003f, 256 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0040, 260 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0041, 264 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0042, 268 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0043, 272 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0044, 276 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0045, 280 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0046, 284 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0047, 288 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0048, 292 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0049, 296 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x004a, 300 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x004b, 304 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x004c, 308 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x004d, 312 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x004e, 316 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x004f, 320 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0050, 324 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0051, 328 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0052, 332 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0053, 336 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0054, 340 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0055, 344 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0056, 348 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0057, 352 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0058, 356 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0059, 360 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x005a, 364 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x005b, 368 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x005c, 372 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x005d, 376 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x005e, 380 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x005f, 384 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0060, 388 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0061, 392 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0062, 396 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0063, 400 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0064, 404 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0065, 408 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0066, 412 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0067, 416 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0068, 420 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0069, 424 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x006a, 428 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x006b, 432 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x006c, 436 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x006d, 440 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x006e, 444 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x006f, 448 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0070, 452 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0071, 456 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0072, 460 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0073, 464 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0074, 468 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0075, 472 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0076, 476 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0077, 480 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0078, 484 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0079, 488 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x007a, 492 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x007b, 496 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x007c, 500 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x007d, 504 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x007e, 508 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x007f, 512 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0080, 516 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0081, 520 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0082, 524 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0083, 528 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0084, 532 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0085, 536 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0086, 540 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0087, 544 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0088, 548 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0089, 552 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x008a, 556 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x008b, 560 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x008c, 564 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x008d, 568 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x008e, 572 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x008f, 576 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0090, 580 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0091, 584 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0092, 588 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0093, 592 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0094, 596 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0095, 600 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0096, 604 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0097, 608 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0098, 612 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0099, 616 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x009a, 620 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x009b, 624 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x009c, 628 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x009d, 632 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x009e, 636 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x009f, 640 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00a0, 644 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00a1, 648 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00a2, 652 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00a3, 656 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00a4, 660 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00a5, 664 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00a6, 668 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00a7, 672 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00a8, 676 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00a9, 680 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00aa, 684 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00ab, 688 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00ac, 692 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00ad, 696 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00ae, 700 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00af, 704 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00b0, 708 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00b1, 712 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00b2, 716 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00b3, 720 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00b4, 724 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00b5, 728 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00b6, 732 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00b7, 736 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00b8, 740 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00b9, 744 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00ba, 748 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00bb, 752 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00bc, 756 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00bd, 760 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00be, 764 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00bf, 768 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00c0, 772 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00c1, 776 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00c2, 780 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00c3, 784 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00c4, 788 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00c5, 792 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00c6, 796 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00c7, 800 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00c8, 804 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00c9, 808 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00ca, 812 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00cb, 816 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00cc, 820 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00cd, 824 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00ce, 828 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00cf, 832 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00d0, 836 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00d1, 840 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00d2, 844 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00d3, 848 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00d4, 852 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00d5, 856 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00d6, 860 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00d7, 864 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00d8, 868 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00d9, 872 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00da, 876 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00db, 880 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00dc, 884 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00dd, 888 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00de, 892 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00df, 896 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00e0, 900 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00e1, 904 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00e2, 908 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00e3, 912 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00e4, 916 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00e5, 920 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00e6, 924 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00e7, 928 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00e8, 932 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00e9, 936 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00ea, 940 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00eb, 944 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00ec, 948 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00ed, 952 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00ee, 956 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00ef, 960 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00f0, 964 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00f1, 968 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00f2, 972 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00f3, 976 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00f4, 980 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00f5, 984 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00f6, 988 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00f7, 992 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00f8, 996 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00f9, 1000 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00fa, 1004 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00fb, 1008 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00fc, 1012 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00fd, 1016 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00fe, 1020 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00ff, 1024 },
|
|
};
|
|
|
|
static pr_vec4_t neg_f_init[] = {
|
|
{ 1, 2, 3, 4 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
};
|
|
|
|
static pr_vec4_t neg_f_expect[] = {
|
|
{ 1, 2, 3, 4 },
|
|
{ 1, 2, 3, 4 },
|
|
{ -1, 2, 3, 4 },
|
|
{ 1, -2, 3, 4 },
|
|
{ -1, -2, 3, 4 },
|
|
{ 1, 2, -3, 4 },
|
|
{ -1, 2, -3, 4 },
|
|
{ 1, -2, -3, 4 },
|
|
{ -1, -2, -3, 4 },
|
|
{ 1, 2, 3, -4 },
|
|
{ -1, 2, 3, -4 },
|
|
{ 1, -2, 3, -4 },
|
|
{ -1, -2, 3, -4 },
|
|
{ 1, 2, -3, -4 },
|
|
{ -1, 2, -3, -4 },
|
|
{ 1, -2, -3, -4 },
|
|
{ -1, -2, -3, -4 },
|
|
};
|
|
|
|
static dstatement_t neg_f_statements[] = {
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00e4, 4 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x01e4, 8 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x02e4, 12 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x03e4, 16 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x04e4, 20 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x05e4, 24 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x06e4, 28 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x07e4, 32 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x08e4, 36 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x09e4, 40 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0ae4, 44 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0be4, 48 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0ce4, 52 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0de4, 56 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0ee4, 60 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x0fe4, 64 },
|
|
};
|
|
|
|
static pr_vec4_t zero_f_init[] = {
|
|
{ 1, 2, 3, 4 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
};
|
|
|
|
static pr_vec4_t zero_f_expect[] = {
|
|
{ 1, 2, 3, 4 },
|
|
{ 1, 2, 3, 4 },
|
|
{ 0, 2, 3, 4 },
|
|
{ 1, 0, 3, 4 },
|
|
{ 0, 0, 3, 4 },
|
|
{ 1, 2, 0, 4 },
|
|
{ 0, 2, 0, 4 },
|
|
{ 1, 0, 0, 4 },
|
|
{ 0, 0, 0, 4 },
|
|
{ 1, 2, 3, 0 },
|
|
{ 0, 2, 3, 0 },
|
|
{ 1, 0, 3, 0 },
|
|
{ 0, 0, 3, 0 },
|
|
{ 1, 2, 0, 0 },
|
|
{ 0, 2, 0, 0 },
|
|
{ 1, 0, 0, 0 },
|
|
{ 0, 0, 0, 0 },
|
|
};
|
|
|
|
static dstatement_t zero_f_statements[] = {
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x00e4, 4 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x10e4, 8 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x20e4, 12 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x30e4, 16 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x40e4, 20 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x50e4, 24 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x60e4, 28 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x70e4, 32 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x80e4, 36 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0x90e4, 40 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0xa0e4, 44 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0xb0e4, 48 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0xc0e4, 52 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0xd0e4, 56 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0xe0e4, 60 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_F), 0, 0xf0e4, 64 },
|
|
};
|
|
|
|
static pr_dvec4_t swizzle_d_init[] = {
|
|
{ 1, 2, 3, 4 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
{ 8, 8, 8, 8 },
|
|
};
|
|
static pr_dvec4_t swizzle_d_expect[] = {
|
|
{ 1, 2, 3, 4 },
|
|
{ 1, 1, 1, 1 },
|
|
{ 2, 1, 1, 1 },
|
|
{ 3, 1, 1, 1 },
|
|
{ 4, 1, 1, 1 },
|
|
{ 1, 2, 1, 1 },
|
|
{ 2, 2, 1, 1 },
|
|
{ 3, 2, 1, 1 },
|
|
{ 4, 2, 1, 1 },
|
|
{ 1, 3, 1, 1 },
|
|
{ 2, 3, 1, 1 },
|
|
{ 3, 3, 1, 1 },
|
|
{ 4, 3, 1, 1 },
|
|
{ 1, 4, 1, 1 },
|
|
{ 2, 4, 1, 1 },
|
|
{ 3, 4, 1, 1 },
|
|
{ 4, 4, 1, 1 },
|
|
{ 1, 1, 2, 1 },
|
|
{ 2, 1, 2, 1 },
|
|
{ 3, 1, 2, 1 },
|
|
{ 4, 1, 2, 1 },
|
|
{ 1, 2, 2, 1 },
|
|
{ 2, 2, 2, 1 },
|
|
{ 3, 2, 2, 1 },
|
|
{ 4, 2, 2, 1 },
|
|
{ 1, 3, 2, 1 },
|
|
{ 2, 3, 2, 1 },
|
|
{ 3, 3, 2, 1 },
|
|
{ 4, 3, 2, 1 },
|
|
{ 1, 4, 2, 1 },
|
|
{ 2, 4, 2, 1 },
|
|
{ 3, 4, 2, 1 },
|
|
{ 4, 4, 2, 1 },
|
|
{ 1, 1, 3, 1 },
|
|
{ 2, 1, 3, 1 },
|
|
{ 3, 1, 3, 1 },
|
|
{ 4, 1, 3, 1 },
|
|
{ 1, 2, 3, 1 },
|
|
{ 2, 2, 3, 1 },
|
|
{ 3, 2, 3, 1 },
|
|
{ 4, 2, 3, 1 },
|
|
{ 1, 3, 3, 1 },
|
|
{ 2, 3, 3, 1 },
|
|
{ 3, 3, 3, 1 },
|
|
{ 4, 3, 3, 1 },
|
|
{ 1, 4, 3, 1 },
|
|
{ 2, 4, 3, 1 },
|
|
{ 3, 4, 3, 1 },
|
|
{ 4, 4, 3, 1 },
|
|
{ 1, 1, 4, 1 },
|
|
{ 2, 1, 4, 1 },
|
|
{ 3, 1, 4, 1 },
|
|
{ 4, 1, 4, 1 },
|
|
{ 1, 2, 4, 1 },
|
|
{ 2, 2, 4, 1 },
|
|
{ 3, 2, 4, 1 },
|
|
{ 4, 2, 4, 1 },
|
|
{ 1, 3, 4, 1 },
|
|
{ 2, 3, 4, 1 },
|
|
{ 3, 3, 4, 1 },
|
|
{ 4, 3, 4, 1 },
|
|
{ 1, 4, 4, 1 },
|
|
{ 2, 4, 4, 1 },
|
|
{ 3, 4, 4, 1 },
|
|
{ 4, 4, 4, 1 },
|
|
{ 1, 1, 1, 2 },
|
|
{ 2, 1, 1, 2 },
|
|
{ 3, 1, 1, 2 },
|
|
{ 4, 1, 1, 2 },
|
|
{ 1, 2, 1, 2 },
|
|
{ 2, 2, 1, 2 },
|
|
{ 3, 2, 1, 2 },
|
|
{ 4, 2, 1, 2 },
|
|
{ 1, 3, 1, 2 },
|
|
{ 2, 3, 1, 2 },
|
|
{ 3, 3, 1, 2 },
|
|
{ 4, 3, 1, 2 },
|
|
{ 1, 4, 1, 2 },
|
|
{ 2, 4, 1, 2 },
|
|
{ 3, 4, 1, 2 },
|
|
{ 4, 4, 1, 2 },
|
|
{ 1, 1, 2, 2 },
|
|
{ 2, 1, 2, 2 },
|
|
{ 3, 1, 2, 2 },
|
|
{ 4, 1, 2, 2 },
|
|
{ 1, 2, 2, 2 },
|
|
{ 2, 2, 2, 2 },
|
|
{ 3, 2, 2, 2 },
|
|
{ 4, 2, 2, 2 },
|
|
{ 1, 3, 2, 2 },
|
|
{ 2, 3, 2, 2 },
|
|
{ 3, 3, 2, 2 },
|
|
{ 4, 3, 2, 2 },
|
|
{ 1, 4, 2, 2 },
|
|
{ 2, 4, 2, 2 },
|
|
{ 3, 4, 2, 2 },
|
|
{ 4, 4, 2, 2 },
|
|
{ 1, 1, 3, 2 },
|
|
{ 2, 1, 3, 2 },
|
|
{ 3, 1, 3, 2 },
|
|
{ 4, 1, 3, 2 },
|
|
{ 1, 2, 3, 2 },
|
|
{ 2, 2, 3, 2 },
|
|
{ 3, 2, 3, 2 },
|
|
{ 4, 2, 3, 2 },
|
|
{ 1, 3, 3, 2 },
|
|
{ 2, 3, 3, 2 },
|
|
{ 3, 3, 3, 2 },
|
|
{ 4, 3, 3, 2 },
|
|
{ 1, 4, 3, 2 },
|
|
{ 2, 4, 3, 2 },
|
|
{ 3, 4, 3, 2 },
|
|
{ 4, 4, 3, 2 },
|
|
{ 1, 1, 4, 2 },
|
|
{ 2, 1, 4, 2 },
|
|
{ 3, 1, 4, 2 },
|
|
{ 4, 1, 4, 2 },
|
|
{ 1, 2, 4, 2 },
|
|
{ 2, 2, 4, 2 },
|
|
{ 3, 2, 4, 2 },
|
|
{ 4, 2, 4, 2 },
|
|
{ 1, 3, 4, 2 },
|
|
{ 2, 3, 4, 2 },
|
|
{ 3, 3, 4, 2 },
|
|
{ 4, 3, 4, 2 },
|
|
{ 1, 4, 4, 2 },
|
|
{ 2, 4, 4, 2 },
|
|
{ 3, 4, 4, 2 },
|
|
{ 4, 4, 4, 2 },
|
|
{ 1, 1, 1, 3 },
|
|
{ 2, 1, 1, 3 },
|
|
{ 3, 1, 1, 3 },
|
|
{ 4, 1, 1, 3 },
|
|
{ 1, 2, 1, 3 },
|
|
{ 2, 2, 1, 3 },
|
|
{ 3, 2, 1, 3 },
|
|
{ 4, 2, 1, 3 },
|
|
{ 1, 3, 1, 3 },
|
|
{ 2, 3, 1, 3 },
|
|
{ 3, 3, 1, 3 },
|
|
{ 4, 3, 1, 3 },
|
|
{ 1, 4, 1, 3 },
|
|
{ 2, 4, 1, 3 },
|
|
{ 3, 4, 1, 3 },
|
|
{ 4, 4, 1, 3 },
|
|
{ 1, 1, 2, 3 },
|
|
{ 2, 1, 2, 3 },
|
|
{ 3, 1, 2, 3 },
|
|
{ 4, 1, 2, 3 },
|
|
{ 1, 2, 2, 3 },
|
|
{ 2, 2, 2, 3 },
|
|
{ 3, 2, 2, 3 },
|
|
{ 4, 2, 2, 3 },
|
|
{ 1, 3, 2, 3 },
|
|
{ 2, 3, 2, 3 },
|
|
{ 3, 3, 2, 3 },
|
|
{ 4, 3, 2, 3 },
|
|
{ 1, 4, 2, 3 },
|
|
{ 2, 4, 2, 3 },
|
|
{ 3, 4, 2, 3 },
|
|
{ 4, 4, 2, 3 },
|
|
{ 1, 1, 3, 3 },
|
|
{ 2, 1, 3, 3 },
|
|
{ 3, 1, 3, 3 },
|
|
{ 4, 1, 3, 3 },
|
|
{ 1, 2, 3, 3 },
|
|
{ 2, 2, 3, 3 },
|
|
{ 3, 2, 3, 3 },
|
|
{ 4, 2, 3, 3 },
|
|
{ 1, 3, 3, 3 },
|
|
{ 2, 3, 3, 3 },
|
|
{ 3, 3, 3, 3 },
|
|
{ 4, 3, 3, 3 },
|
|
{ 1, 4, 3, 3 },
|
|
{ 2, 4, 3, 3 },
|
|
{ 3, 4, 3, 3 },
|
|
{ 4, 4, 3, 3 },
|
|
{ 1, 1, 4, 3 },
|
|
{ 2, 1, 4, 3 },
|
|
{ 3, 1, 4, 3 },
|
|
{ 4, 1, 4, 3 },
|
|
{ 1, 2, 4, 3 },
|
|
{ 2, 2, 4, 3 },
|
|
{ 3, 2, 4, 3 },
|
|
{ 4, 2, 4, 3 },
|
|
{ 1, 3, 4, 3 },
|
|
{ 2, 3, 4, 3 },
|
|
{ 3, 3, 4, 3 },
|
|
{ 4, 3, 4, 3 },
|
|
{ 1, 4, 4, 3 },
|
|
{ 2, 4, 4, 3 },
|
|
{ 3, 4, 4, 3 },
|
|
{ 4, 4, 4, 3 },
|
|
{ 1, 1, 1, 4 },
|
|
{ 2, 1, 1, 4 },
|
|
{ 3, 1, 1, 4 },
|
|
{ 4, 1, 1, 4 },
|
|
{ 1, 2, 1, 4 },
|
|
{ 2, 2, 1, 4 },
|
|
{ 3, 2, 1, 4 },
|
|
{ 4, 2, 1, 4 },
|
|
{ 1, 3, 1, 4 },
|
|
{ 2, 3, 1, 4 },
|
|
{ 3, 3, 1, 4 },
|
|
{ 4, 3, 1, 4 },
|
|
{ 1, 4, 1, 4 },
|
|
{ 2, 4, 1, 4 },
|
|
{ 3, 4, 1, 4 },
|
|
{ 4, 4, 1, 4 },
|
|
{ 1, 1, 2, 4 },
|
|
{ 2, 1, 2, 4 },
|
|
{ 3, 1, 2, 4 },
|
|
{ 4, 1, 2, 4 },
|
|
{ 1, 2, 2, 4 },
|
|
{ 2, 2, 2, 4 },
|
|
{ 3, 2, 2, 4 },
|
|
{ 4, 2, 2, 4 },
|
|
{ 1, 3, 2, 4 },
|
|
{ 2, 3, 2, 4 },
|
|
{ 3, 3, 2, 4 },
|
|
{ 4, 3, 2, 4 },
|
|
{ 1, 4, 2, 4 },
|
|
{ 2, 4, 2, 4 },
|
|
{ 3, 4, 2, 4 },
|
|
{ 4, 4, 2, 4 },
|
|
{ 1, 1, 3, 4 },
|
|
{ 2, 1, 3, 4 },
|
|
{ 3, 1, 3, 4 },
|
|
{ 4, 1, 3, 4 },
|
|
{ 1, 2, 3, 4 },
|
|
{ 2, 2, 3, 4 },
|
|
{ 3, 2, 3, 4 },
|
|
{ 4, 2, 3, 4 },
|
|
{ 1, 3, 3, 4 },
|
|
{ 2, 3, 3, 4 },
|
|
{ 3, 3, 3, 4 },
|
|
{ 4, 3, 3, 4 },
|
|
{ 1, 4, 3, 4 },
|
|
{ 2, 4, 3, 4 },
|
|
{ 3, 4, 3, 4 },
|
|
{ 4, 4, 3, 4 },
|
|
{ 1, 1, 4, 4 },
|
|
{ 2, 1, 4, 4 },
|
|
{ 3, 1, 4, 4 },
|
|
{ 4, 1, 4, 4 },
|
|
{ 1, 2, 4, 4 },
|
|
{ 2, 2, 4, 4 },
|
|
{ 3, 2, 4, 4 },
|
|
{ 4, 2, 4, 4 },
|
|
{ 1, 3, 4, 4 },
|
|
{ 2, 3, 4, 4 },
|
|
{ 3, 3, 4, 4 },
|
|
{ 4, 3, 4, 4 },
|
|
{ 1, 4, 4, 4 },
|
|
{ 2, 4, 4, 4 },
|
|
{ 3, 4, 4, 4 },
|
|
{ 4, 4, 4, 4 },
|
|
};
|
|
|
|
static dstatement_t swizzle_d_statements[] = {
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0000, 8 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0001, 16 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0002, 24 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0003, 32 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0004, 40 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0005, 48 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0006, 56 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0007, 64 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0008, 72 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0009, 80 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x000a, 88 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x000b, 96 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x000c, 104 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x000d, 112 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x000e, 120 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x000f, 128 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0010, 136 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0011, 144 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0012, 152 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0013, 160 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0014, 168 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0015, 176 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0016, 184 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0017, 192 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0018, 200 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0019, 208 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x001a, 216 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x001b, 224 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x001c, 232 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x001d, 240 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x001e, 248 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x001f, 256 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0020, 264 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0021, 272 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0022, 280 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0023, 288 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0024, 296 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0025, 304 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0026, 312 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0027, 320 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0028, 328 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0029, 336 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x002a, 344 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x002b, 352 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x002c, 360 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x002d, 368 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x002e, 376 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x002f, 384 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0030, 392 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0031, 400 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0032, 408 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0033, 416 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0034, 424 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0035, 432 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0036, 440 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0037, 448 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0038, 456 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0039, 464 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x003a, 472 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x003b, 480 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x003c, 488 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x003d, 496 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x003e, 504 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x003f, 512 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0040, 520 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0041, 528 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0042, 536 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0043, 544 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0044, 552 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0045, 560 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0046, 568 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0047, 576 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0048, 584 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0049, 592 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x004a, 600 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x004b, 608 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x004c, 616 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x004d, 624 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x004e, 632 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x004f, 640 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0050, 648 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0051, 656 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0052, 664 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0053, 672 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0054, 680 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0055, 688 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0056, 696 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0057, 704 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0058, 712 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0059, 720 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x005a, 728 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x005b, 736 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x005c, 744 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x005d, 752 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x005e, 760 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x005f, 768 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0060, 776 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0061, 784 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0062, 792 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0063, 800 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0064, 808 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0065, 816 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0066, 824 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0067, 832 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0068, 840 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0069, 848 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x006a, 856 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x006b, 864 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x006c, 872 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x006d, 880 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x006e, 888 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x006f, 896 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0070, 904 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0071, 912 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0072, 920 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0073, 928 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0074, 936 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0075, 944 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0076, 952 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0077, 960 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0078, 968 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0079, 976 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x007a, 984 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x007b, 992 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x007c, 1000 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x007d, 1008 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x007e, 1016 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x007f, 1024 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0080, 1032 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0081, 1040 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0082, 1048 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0083, 1056 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0084, 1064 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0085, 1072 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0086, 1080 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0087, 1088 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0088, 1096 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0089, 1104 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x008a, 1112 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x008b, 1120 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x008c, 1128 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x008d, 1136 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x008e, 1144 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x008f, 1152 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0090, 1160 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0091, 1168 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0092, 1176 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0093, 1184 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0094, 1192 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0095, 1200 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0096, 1208 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0097, 1216 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0098, 1224 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0099, 1232 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x009a, 1240 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x009b, 1248 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x009c, 1256 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x009d, 1264 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x009e, 1272 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x009f, 1280 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00a0, 1288 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00a1, 1296 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00a2, 1304 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00a3, 1312 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00a4, 1320 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00a5, 1328 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00a6, 1336 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00a7, 1344 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00a8, 1352 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00a9, 1360 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00aa, 1368 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00ab, 1376 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00ac, 1384 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00ad, 1392 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00ae, 1400 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00af, 1408 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00b0, 1416 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00b1, 1424 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00b2, 1432 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00b3, 1440 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00b4, 1448 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00b5, 1456 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00b6, 1464 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00b7, 1472 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00b8, 1480 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00b9, 1488 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00ba, 1496 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00bb, 1504 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00bc, 1512 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00bd, 1520 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00be, 1528 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00bf, 1536 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00c0, 1544 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00c1, 1552 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00c2, 1560 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00c3, 1568 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00c4, 1576 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00c5, 1584 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00c6, 1592 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00c7, 1600 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00c8, 1608 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00c9, 1616 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00ca, 1624 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00cb, 1632 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00cc, 1640 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00cd, 1648 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00ce, 1656 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00cf, 1664 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00d0, 1672 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00d1, 1680 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00d2, 1688 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00d3, 1696 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00d4, 1704 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00d5, 1712 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00d6, 1720 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00d7, 1728 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00d8, 1736 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00d9, 1744 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00da, 1752 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00db, 1760 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00dc, 1768 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00dd, 1776 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00de, 1784 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00df, 1792 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00e0, 1800 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00e1, 1808 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00e2, 1816 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00e3, 1824 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00e4, 1832 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00e5, 1840 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00e6, 1848 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00e7, 1856 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00e8, 1864 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00e9, 1872 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00ea, 1880 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00eb, 1888 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00ec, 1896 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00ed, 1904 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00ee, 1912 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00ef, 1920 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00f0, 1928 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00f1, 1936 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00f2, 1944 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00f3, 1952 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00f4, 1960 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00f5, 1968 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00f6, 1976 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00f7, 1984 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00f8, 1992 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00f9, 2000 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00fa, 2008 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00fb, 2016 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00fc, 2024 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00fd, 2032 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00fe, 2040 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00ff, 2048 },
|
|
};
|
|
|
|
static pr_dvec4_t neg_d_init[] = {
|
|
{ 1, 2, 3, 4 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
};
|
|
|
|
static pr_dvec4_t neg_d_expect[] = {
|
|
{ 1, 2, 3, 4 },
|
|
{ 1, 2, 3, 4 },
|
|
{ -1, 2, 3, 4 },
|
|
{ 1, -2, 3, 4 },
|
|
{ -1, -2, 3, 4 },
|
|
{ 1, 2, -3, 4 },
|
|
{ -1, 2, -3, 4 },
|
|
{ 1, -2, -3, 4 },
|
|
{ -1, -2, -3, 4 },
|
|
{ 1, 2, 3, -4 },
|
|
{ -1, 2, 3, -4 },
|
|
{ 1, -2, 3, -4 },
|
|
{ -1, -2, 3, -4 },
|
|
{ 1, 2, -3, -4 },
|
|
{ -1, 2, -3, -4 },
|
|
{ 1, -2, -3, -4 },
|
|
{ -1, -2, -3, -4 },
|
|
};
|
|
|
|
static dstatement_t neg_d_statements[] = {
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00e4, 8 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x01e4, 16 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x02e4, 24 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x03e4, 32 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x04e4, 40 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x05e4, 48 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x06e4, 56 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x07e4, 64 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x08e4, 72 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x09e4, 80 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0ae4, 88 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0be4, 96 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0ce4, 104 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0de4, 112 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0ee4, 120 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x0fe4, 128 },
|
|
};
|
|
|
|
static pr_dvec4_t zero_d_init[] = {
|
|
{ 1, 2, 3, 4 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
{ 9, 9, 9, 9 },
|
|
};
|
|
|
|
static pr_dvec4_t zero_d_expect[] = {
|
|
{ 1, 2, 3, 4 },
|
|
{ 1, 2, 3, 4 },
|
|
{ 0, 2, 3, 4 },
|
|
{ 1, 0, 3, 4 },
|
|
{ 0, 0, 3, 4 },
|
|
{ 1, 2, 0, 4 },
|
|
{ 0, 2, 0, 4 },
|
|
{ 1, 0, 0, 4 },
|
|
{ 0, 0, 0, 4 },
|
|
{ 1, 2, 3, 0 },
|
|
{ 0, 2, 3, 0 },
|
|
{ 1, 0, 3, 0 },
|
|
{ 0, 0, 3, 0 },
|
|
{ 1, 2, 0, 0 },
|
|
{ 0, 2, 0, 0 },
|
|
{ 1, 0, 0, 0 },
|
|
{ 0, 0, 0, 0 },
|
|
};
|
|
|
|
static dstatement_t zero_d_statements[] = {
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x00e4, 8 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x10e4, 16 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x20e4, 24 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x30e4, 32 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x40e4, 40 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x50e4, 48 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x60e4, 56 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x70e4, 64 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x80e4, 72 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0x90e4, 80 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0xa0e4, 88 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0xb0e4, 96 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0xc0e4, 104 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0xd0e4, 112 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0xe0e4, 120 },
|
|
{ OP(0, 0, 0, OP_SWIZZLE_D), 0, 0xf0e4, 128 },
|
|
};
|
|
|
|
test_t tests[] = {
|
|
{
|
|
.desc = "swizzle f",
|
|
.num_globals = num_globals(swizzle_f_init,swizzle_f_expect),
|
|
.num_statements = num_statements(swizzle_f_statements),
|
|
.statements = swizzle_f_statements,
|
|
.init_globals = (pr_int_t *) swizzle_f_init,
|
|
.expect_globals = (pr_int_t *) swizzle_f_expect,
|
|
},
|
|
{
|
|
.desc = "neg f",
|
|
.num_globals = num_globals(neg_f_init,neg_f_expect),
|
|
.num_statements = num_statements(neg_f_statements),
|
|
.statements = neg_f_statements,
|
|
.init_globals = (pr_int_t *) neg_f_init,
|
|
.expect_globals = (pr_int_t *) neg_f_expect,
|
|
},
|
|
{
|
|
.desc = "zero f",
|
|
.num_globals = num_globals(zero_f_init,zero_f_expect),
|
|
.num_statements = num_statements(zero_f_statements),
|
|
.statements = zero_f_statements,
|
|
.init_globals = (pr_int_t *) zero_f_init,
|
|
.expect_globals = (pr_int_t *) zero_f_expect,
|
|
},
|
|
{
|
|
.desc = "swizzle d",
|
|
.num_globals = num_globals(swizzle_d_init,swizzle_d_expect),
|
|
.num_statements = num_statements(swizzle_d_statements),
|
|
.statements = swizzle_d_statements,
|
|
.init_globals = (pr_int_t *) swizzle_d_init,
|
|
.expect_globals = (pr_int_t *) swizzle_d_expect,
|
|
},
|
|
{
|
|
.desc = "neg d",
|
|
.num_globals = num_globals(neg_d_init,neg_d_expect),
|
|
.num_statements = num_statements(neg_d_statements),
|
|
.statements = neg_d_statements,
|
|
.init_globals = (pr_int_t *) neg_d_init,
|
|
.expect_globals = (pr_int_t *) neg_d_expect,
|
|
},
|
|
{
|
|
.desc = "zero d",
|
|
.num_globals = num_globals(zero_d_init,zero_d_expect),
|
|
.num_statements = num_statements(zero_d_statements),
|
|
.statements = zero_d_statements,
|
|
.init_globals = (pr_int_t *) zero_d_init,
|
|
.expect_globals = (pr_int_t *) zero_d_expect,
|
|
},
|
|
};
|
|
|
|
#include "main.c"
|