Simple Arithmetic on Blocks

Simple Arithmetic on Blocks — Aritmetic operations on 8x8 blocks

Synopsis




void        oil_mult8x8_s16                 (int16_t *d_8x8,
                                             const int16_t *s1_8x8,
                                             const int16_t *s2_8x8,
                                             int ds,
                                             int ss1,
                                             int ss2);
void        oil_sad8x8_f64                  (double *d_8x8,
                                             int ds,
                                             const double *s1_8x8,
                                             int ss1,
                                             const double *s2_8x8,
                                             int ss2);
void        oil_sad8x8_s16                  (uint32_t *d_8x8,
                                             int ds,
                                             const int16_t *s1_8x8,
                                             int ss1,
                                             const int16_t *s2_8x8,
                                             int ss2);
void        oil_sad8x8_f64_2                (double *d_1,
                                             const double *s1_8x8,
                                             int ss1,
                                             const double *s2_8x8,
                                             int ss2);
void        oil_sad8x8_s16_2                (uint32_t *d_1,
                                             const int16_t *s1_8x8,
                                             int ss1,
                                             const int16_t *s2_8x8,
                                             int ss2);
void        oil_sad8x8_u8                   (uint32_t *d_1,
                                             const uint8_t *s1_8x8,
                                             int ss1,
                                             const uint8_t *s2_8x8,
                                             int ss2);

Description

Details

oil_mult8x8_s16 ()

void        oil_mult8x8_s16                 (int16_t *d_8x8,
                                             const int16_t *s1_8x8,
                                             const int16_t *s2_8x8,
                                             int ds,
                                             int ss1,
                                             int ss2);

Multiplies each element in s1_8x8 and s2_8x8 and places the result in d_8x8.

d_8x8 :
s1_8x8 :
s2_8x8 :
ds :
ss1 :
ss2 :

oil_sad8x8_f64 ()

void        oil_sad8x8_f64                  (double *d_8x8,
                                             int ds,
                                             const double *s1_8x8,
                                             int ss1,
                                             const double *s2_8x8,
                                             int ss2);

FIXME: This function is broken and has been replaced by @oil_sad8x8_f64_2() because the destination of this function is an 8x8 block instead of a single value.

d_8x8 :
ds :
s1_8x8 :
ss1 :
s2_8x8 :
ss2 :

oil_sad8x8_s16 ()

void        oil_sad8x8_s16                  (uint32_t *d_8x8,
                                             int ds,
                                             const int16_t *s1_8x8,
                                             int ss1,
                                             const int16_t *s2_8x8,
                                             int ss2);

FIXME: This function is broken and has been replaced by @oil_sad8x8_s16_2() because the destination of this function is an 8x8 block instead of a single value.

d_8x8 :
ds :
s1_8x8 :
ss1 :
s2_8x8 :
ss2 :

oil_sad8x8_f64_2 ()

void        oil_sad8x8_f64_2                (double *d_1,
                                             const double *s1_8x8,
                                             int ss1,
                                             const double *s2_8x8,
                                             int ss2);

Calculates the sum of absolute differences between elements in s1_8x8 and s2_8x8, and places the result in d_1.

d_1 :
s1_8x8 :
ss1 :
s2_8x8 :
ss2 :

oil_sad8x8_s16_2 ()

void        oil_sad8x8_s16_2                (uint32_t *d_1,
                                             const int16_t *s1_8x8,
                                             int ss1,
                                             const int16_t *s2_8x8,
                                             int ss2);

Calculates the sum of absolute differences between elements in s1_8x8 and s2_8x8, and places the result in d_1.

d_1 :
s1_8x8 :
ss1 :
s2_8x8 :
ss2 :

oil_sad8x8_u8 ()

void        oil_sad8x8_u8                   (uint32_t *d_1,
                                             const uint8_t *s1_8x8,
                                             int ss1,
                                             const uint8_t *s2_8x8,
                                             int ss2);

Calculates the sum of absolute differences between elements in s1_8x8 and s2_8x8, and places the result in d_1.

d_1 :
s1_8x8 :
ss1 :
s2_8x8 :
ss2 :