Commit bf25313b authored by Johann's avatar Johann Committed by Commit Bot

add const to msa loads

Avoid warnings regarding loss of qualifiers:
warning: cast from type ‘const uint8_t* {aka const unsigned char*}’
to type ‘v16i8* {aka __vector(16) signed char*}’ casts away
qualifiers

BUG=libyuv:793

Change-Id: Ie0d215bc07b49285b5d06ee91ccc2c9a7979799e
Reviewed-on: https://chromium-review.googlesource.com/1107879Reviewed-by: 's avatarFrank Barchard <fbarchard@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
parent bc383e76
...@@ -18,7 +18,7 @@ ...@@ -18,7 +18,7 @@
#if (__mips_isa_rev >= 6) #if (__mips_isa_rev >= 6)
#define LW(psrc) \ #define LW(psrc) \
({ \ ({ \
uint8_t* psrc_lw_m = (uint8_t*)(psrc); /* NOLINT */ \ const uint8_t* psrc_lw_m = (const uint8_t*)(psrc); \
uint32_t val_m; \ uint32_t val_m; \
asm volatile("lw %[val_m], %[psrc_lw_m] \n" \ asm volatile("lw %[val_m], %[psrc_lw_m] \n" \
: [val_m] "=r"(val_m) \ : [val_m] "=r"(val_m) \
...@@ -29,7 +29,7 @@ ...@@ -29,7 +29,7 @@
#if (__mips == 64) #if (__mips == 64)
#define LD(psrc) \ #define LD(psrc) \
({ \ ({ \
uint8_t* psrc_ld_m = (uint8_t*)(psrc); /* NOLINT */ \ const uint8_t* psrc_ld_m = (const uint8_t*)(psrc); \
uint64_t val_m = 0; \ uint64_t val_m = 0; \
asm volatile("ld %[val_m], %[psrc_ld_m] \n" \ asm volatile("ld %[val_m], %[psrc_ld_m] \n" \
: [val_m] "=r"(val_m) \ : [val_m] "=r"(val_m) \
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
#else // !(__mips == 64) #else // !(__mips == 64)
#define LD(psrc) \ #define LD(psrc) \
({ \ ({ \
uint8_t* psrc_ld_m = (uint8_t*)(psrc); /* NOLINT */ \ const uint8_t* psrc_ld_m = (const uint8_t*)(psrc); \
uint32_t val0_m, val1_m; \ uint32_t val0_m, val1_m; \
uint64_t val_m = 0; \ uint64_t val_m = 0; \
val0_m = LW(psrc_ld_m); \ val0_m = LW(psrc_ld_m); \
...@@ -83,7 +83,7 @@ ...@@ -83,7 +83,7 @@
#else // !(__mips_isa_rev >= 6) #else // !(__mips_isa_rev >= 6)
#define LW(psrc) \ #define LW(psrc) \
({ \ ({ \
uint8_t* psrc_lw_m = (uint8_t*)(psrc); /* NOLINT */ \ const uint8_t* psrc_lw_m = (const uint8_t*)(psrc); \
uint32_t val_m; \ uint32_t val_m; \
asm volatile("ulw %[val_m], %[psrc_lw_m] \n" \ asm volatile("ulw %[val_m], %[psrc_lw_m] \n" \
: [val_m] "=r"(val_m) \ : [val_m] "=r"(val_m) \
...@@ -94,7 +94,7 @@ ...@@ -94,7 +94,7 @@
#if (__mips == 64) #if (__mips == 64)
#define LD(psrc) \ #define LD(psrc) \
({ \ ({ \
uint8_t* psrc_ld_m = (uint8_t*)(psrc); /* NOLINT */ \ const uint8_t* psrc_ld_m = (const uint8_t*)(psrc); \
uint64_t val_m = 0; \ uint64_t val_m = 0; \
asm volatile("uld %[val_m], %[psrc_ld_m] \n" \ asm volatile("uld %[val_m], %[psrc_ld_m] \n" \
: [val_m] "=r"(val_m) \ : [val_m] "=r"(val_m) \
...@@ -104,7 +104,7 @@ ...@@ -104,7 +104,7 @@
#else // !(__mips == 64) #else // !(__mips == 64)
#define LD(psrc) \ #define LD(psrc) \
({ \ ({ \
uint8_t* psrc_ld_m = (uint8_t*)(psrc); /* NOLINT */ \ const uint8_t* psrc_ld_m = (const uint8_t*)(psrc); \
uint32_t val0_m, val1_m; \ uint32_t val0_m, val1_m; \
uint64_t val_m = 0; \ uint64_t val_m = 0; \
val0_m = LW(psrc_ld_m); \ val0_m = LW(psrc_ld_m); \
...@@ -138,7 +138,7 @@ ...@@ -138,7 +138,7 @@
// TODO(fbarchard): Consider removing __VAR_ARGS versions. // TODO(fbarchard): Consider removing __VAR_ARGS versions.
#define LD_B(RTYPE, psrc) *((RTYPE*)(psrc)) /* NOLINT */ #define LD_B(RTYPE, psrc) *((RTYPE*)(psrc)) /* NOLINT */
#define LD_UB(...) LD_B(v16u8, __VA_ARGS__) #define LD_UB(...) LD_B(const v16u8, __VA_ARGS__)
#define ST_B(RTYPE, in, pdst) *((RTYPE*)(pdst)) = (in) /* NOLINT */ #define ST_B(RTYPE, in, pdst) *((RTYPE*)(pdst)) = (in) /* NOLINT */
#define ST_UB(...) ST_B(v16u8, __VA_ARGS__) #define ST_UB(...) ST_B(v16u8, __VA_ARGS__)
...@@ -158,14 +158,14 @@ ...@@ -158,14 +158,14 @@
out0 = LD_B(RTYPE, (psrc)); \ out0 = LD_B(RTYPE, (psrc)); \
out1 = LD_B(RTYPE, (psrc) + stride); \ out1 = LD_B(RTYPE, (psrc) + stride); \
} }
#define LD_UB2(...) LD_B2(v16u8, __VA_ARGS__) #define LD_UB2(...) LD_B2(const v16u8, __VA_ARGS__)
#define LD_B4(RTYPE, psrc, stride, out0, out1, out2, out3) \ #define LD_B4(RTYPE, psrc, stride, out0, out1, out2, out3) \
{ \ { \
LD_B2(RTYPE, (psrc), stride, out0, out1); \ LD_B2(RTYPE, (psrc), stride, out0, out1); \
LD_B2(RTYPE, (psrc) + 2 * stride, stride, out2, out3); \ LD_B2(RTYPE, (psrc) + 2 * stride, stride, out2, out3); \
} }
#define LD_UB4(...) LD_B4(v16u8, __VA_ARGS__) #define LD_UB4(...) LD_B4(const v16u8, __VA_ARGS__)
/* Description : Store two vectors with stride each having 16 'byte' sized /* Description : Store two vectors with stride each having 16 'byte' sized
elements elements
......
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment