X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=arm%2Fneon_normalxx.Sinc;h=6e3768f7327b4d9c4e3e034b343814de8c59ee24;hb=d1453cf7e6d5d6758cc5d72c6d3af7d37156bf72;hp=fcbcfd48ab8f2759580ce66b2a6941bab7155baa;hpb=7fc3ac8a09642992b62a9c3ab5df0f52ac4e8fee;p=libpicofe.git diff --git a/arm/neon_normalxx.Sinc b/arm/neon_normalxx.Sinc index fcbcfd4..6e3768f 100644 --- a/arm/neon_normalxx.Sinc +++ b/arm/neon_normalxx.Sinc @@ -21,6 +21,27 @@ @@ +#if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 4) +/* can't use because gas wants ',' before ':' */ +#define A128 +#define A256 +#else +#define A128 :128 +#define A256 :256 +#endif + +.macro bgr1555_to_rgb565 dr0 dr1 t0 t1 t2 ar + mov \ar, #0x07c0 + vshl.u16 \t0, \dr0, #11 + vshl.u16 \t1, \dr1, #11 + vshl.u16 \dr0, \dr0, #1 + vshl.u16 \dr1, \dr1, #1 + vdup.16 \t2, \ar + vsri.u16 \t0, \dr0, #11 + vsri.u16 \t1, \dr1, #11 + vbif \dr0, \t0, \t2 + vbif \dr1, \t1, \t2 +.endm .macro _neon_normalxx_8_16_line_middle src, dst, pal, counter, reg1, reg2, reg3, reg4, reg5, reg6, reg7, reg8, reg9, dststride, dA, dB ldr \reg1, [\src] @ reg1 = src[0-3]