From 2488b3105b68be8ea33f88722537427e361cbed2 Mon Sep 17 00:00:00 2001 From: Frank Barchard Date: Tue, 25 Oct 2016 11:36:54 -0700 Subject: [PATCH] White spaces, comments and lint fixes for msa. no functional changes. TBR=kjellander@chromium.org BUG=libyuv:634 Review URL: https://codereview.chromium.org/2446313002 . --- include/libyuv/macros_msa.h | 71 +++++++++++++++---------------------- source/row_msa.cc | 1 + 2 files changed, 29 insertions(+), 43 deletions(-) diff --git a/include/libyuv/macros_msa.h b/include/libyuv/macros_msa.h index 7109fbab1..48bea5d0e 100644 --- a/include/libyuv/macros_msa.h +++ b/include/libyuv/macros_msa.h @@ -16,97 +16,81 @@ #include #if (__mips_isa_rev >= 6) - #define LW(psrc) ( { \ - uint8 *psrc_lw_m = (uint8 *) (psrc); \ + #define LW(psrc) ({ \ + uint8* psrc_lw_m = (uint8*) (psrc); \ /* NOLINT */ uint32 val_m; \ - \ asm volatile ( \ "lw %[val_m], %[psrc_lw_m] \n\t" \ - \ : [val_m] "=r" (val_m) \ : [psrc_lw_m] "m" (*psrc_lw_m) \ ); \ \ val_m; \ - } ) + }) #if (__mips == 64) - #define LD(psrc) ( { \ - uint8 *psrc_ld_m = (uint8 *) (psrc); \ + #define LD(psrc) ({ \ + uint8* psrc_ld_m = (uint8*) (psrc); \ /* NOLINT */ uint64 val_m = 0; \ - \ asm volatile ( \ "ld %[val_m], %[psrc_ld_m] \n\t" \ - \ : [val_m] "=r" (val_m) \ : [psrc_ld_m] "m" (*psrc_ld_m) \ ); \ - \ val_m; \ - } ) + }) #else // !(__mips == 64) - #define LD(psrc) ( { \ - uint8 *psrc_ld_m = (uint8 *) (psrc); \ + #define LD(psrc) ({ \ + uint8* psrc_ld_m = (uint8*) (psrc); \ /* NOLINT */ uint32 val0_m, val1_m; \ uint64 val_m = 0; \ - \ val0_m = LW(psrc_ld_m); \ val1_m = LW(psrc_ld_m + 4); \ - \ - val_m = (uint64) (val1_m); \ - val_m = (uint64) ((val_m << 32) & 0xFFFFFFFF00000000); \ - val_m = (uint64) (val_m | (uint64) val0_m); \ - \ + val_m = (uint64) (val1_m); \ /* NOLINT */ + val_m = (uint64) ((val_m << 32) & 0xFFFFFFFF00000000); \ /* NOLINT */ + val_m = (uint64) (val_m | (uint64) val0_m); \ /* NOLINT */ val_m; \ - } ) + }) #endif // (__mips == 64) #else // !(__mips_isa_rev >= 6) - #define LW(psrc) ( { \ - uint8 *psrc_lw_m = (uint8 *) (psrc); \ + #define LW(psrc) ({ \ + uint8* psrc_lw_m = (uint8*) (psrc); \ /* NOLINT */ uint32 val_m; \ - \ asm volatile ( \ "ulw %[val_m], %[psrc_lw_m] \n\t" \ - \ : [val_m] "=r" (val_m) \ : [psrc_lw_m] "m" (*psrc_lw_m) \ ); \ - \ val_m; \ - } ) + }) #if (__mips == 64) - #define LD(psrc) ( { \ - uint8 *psrc_ld_m = (uint8 *) (psrc); \ + #define LD(psrc) ({ \ + uint8* psrc_ld_m = (uint8*) (psrc); \ /* NOLINT */ uint64 val_m = 0; \ - \ asm volatile ( \ "uld %[val_m], %[psrc_ld_m] \n\t" \ - \ : [val_m] "=r" (val_m) \ : [psrc_ld_m] "m" (*psrc_ld_m) \ ); \ - \ val_m; \ - } ) + }) #else // !(__mips == 64) - #define LD(psrc) ( { \ - uint8 *psrc_ld_m = (uint8 *) (psrc); \ + #define LD(psrc) ({ \ + uint8* psrc_ld_m = (uint8*) (psrc); \ /* NOLINT */ uint32 val0_m, val1_m; \ uint64 val_m = 0; \ - \ val0_m = LW(psrc_ld_m); \ val1_m = LW(psrc_ld_m + 4); \ - \ - val_m = (uint64) (val1_m); \ - val_m = (uint64) ((val_m << 32) & 0xFFFFFFFF00000000); \ - val_m = (uint64) (val_m | (uint64) val0_m); \ - \ + val_m = (uint64) (val1_m); \ /* NOLINT */ + val_m = (uint64) ((val_m << 32) & 0xFFFFFFFF00000000); \ /* NOLINT */ + val_m = (uint64) (val_m | (uint64) val0_m); \ /* NOLINT */ val_m; \ - } ) + }) #endif // (__mips == 64) #endif // (__mips_isa_rev >= 6) +// TODO(fbarchard): Consider removing __VAR_ARGS versions. #define LD_B(RTYPE, psrc) *((RTYPE*)(psrc)) /* NOLINT */ #define LD_UB(...) LD_B(v16u8, __VA_ARGS__) @@ -143,13 +127,14 @@ ST_B(RTYPE, in1, (pdst) + stride); \ } #define ST_UB2(...) ST_B2(v16u8, __VA_ARGS__) -# + #define ST_B4(RTYPE, in0, in1, in2, in3, pdst, stride) { \ ST_B2(RTYPE, in0, in1, (pdst), stride); \ ST_B2(RTYPE, in2, in3, (pdst) + 2 * stride, stride); \ } #define ST_UB4(...) ST_B4(v16u8, __VA_ARGS__) -# + +// TODO(fbarchard): Consider using __msa_vshf_b and __msa_ilvr_b directly. /* Description : Shuffle byte vector elements as per mask vector Arguments : Inputs - in0, in1, in2, in3, mask0, mask1 Outputs - out0, out1 diff --git a/source/row_msa.cc b/source/row_msa.cc index d0990b4ff..b747a77ec 100644 --- a/source/row_msa.cc +++ b/source/row_msa.cc @@ -19,6 +19,7 @@ namespace libyuv { extern "C" { #endif +// Convert 8 pixels of YUV 420 to RGB. #define I422TORGB(in0, in1, in2, ub, vr, ug, vg, \ bb, bg, br, yg, out0, out1, out2) { \ v8i16 vec0_m; \