FFmpeg
Macros | Functions
simple_idct_lasx.c File Reference
#include "libavutil/loongarch/loongson_intrinsics.h"
#include "idctdsp_loongarch.h"

Go to the source code of this file.

Macros

#define LASX_TRANSPOSE4x16(in_0, in_1, in_2, in_3, out_0, out_1, out_2, out_3)
 
#define LASX_IDCTROWCONDDC
 
#define LASX_IDCTCOLS
 

Functions

void ff_simple_idct_lasx (int16_t *block)
 
void ff_simple_idct_put_lasx (uint8_t *dst, ptrdiff_t dst_stride, int16_t *block)
 
void ff_simple_idct_add_lasx (uint8_t *dst, ptrdiff_t dst_stride, int16_t *block)
 

Macro Definition Documentation

◆ LASX_TRANSPOSE4x16

#define LASX_TRANSPOSE4x16 (   in_0,
  in_1,
  in_2,
  in_3,
  out_0,
  out_1,
  out_2,
  out_3 
)
Value:
{ \
__m256i temp_0, temp_1, temp_2, temp_3; \
__m256i temp_4, temp_5, temp_6, temp_7; \
DUP4_ARG3(__lasx_xvpermi_q, in_2, in_0, 0x20, in_2, in_0, 0x31, in_3, in_1,\
0x20, in_3, in_1, 0x31, temp_0, temp_1, temp_2, temp_3); \
DUP2_ARG2(__lasx_xvilvl_h, temp_1, temp_0, temp_3, temp_2, temp_4, temp_6);\
DUP2_ARG2(__lasx_xvilvh_h, temp_1, temp_0, temp_3, temp_2, temp_5, temp_7);\
DUP2_ARG2(__lasx_xvilvl_w, temp_6, temp_4, temp_7, temp_5, out_0, out_2); \
DUP2_ARG2(__lasx_xvilvh_w, temp_6, temp_4, temp_7, temp_5, out_1, out_3); \
}

Definition at line 25 of file simple_idct_lasx.c.

◆ LASX_IDCTROWCONDDC

#define LASX_IDCTROWCONDDC

Definition at line 37 of file simple_idct_lasx.c.

◆ LASX_IDCTCOLS

#define LASX_IDCTCOLS

Definition at line 127 of file simple_idct_lasx.c.

Function Documentation

◆ ff_simple_idct_lasx()

void ff_simple_idct_lasx ( int16_t *  block)

Definition at line 177 of file simple_idct_lasx.c.

Referenced by ff_idctdsp_init_loongarch().

◆ ff_simple_idct_put_lasx()

void ff_simple_idct_put_lasx ( uint8_t *  dst,
ptrdiff_t  dst_stride,
int16_t *  block 
)

Definition at line 200 of file simple_idct_lasx.c.

Referenced by ff_idctdsp_init_loongarch().

◆ ff_simple_idct_add_lasx()

void ff_simple_idct_add_lasx ( uint8_t *  dst,
ptrdiff_t  dst_stride,
int16_t *  block 
)

Definition at line 234 of file simple_idct_lasx.c.

Referenced by ff_idctdsp_init_loongarch().

out_2
char out_2
Definition: yuv2rgb.c:652
out_1
char out_1
Definition: yuv2rgb.c:652