#include <assert.h>
#include <float.h>
#include <stdint.h>
#include "libavutil/attributes.h"
#include "libavutil/mem.h"
#include "ops_chain.h"
Go to the source code of this file.
|
| #define | SWS_LOOP AV_PRAGMA(GCC ivdep) |
| |
| #define | bitfn2(name, ext) name ## _ ## ext |
| |
| #define | bitfn(name, ext) bitfn2(name, ext) |
| |
| #define | FN_SUFFIX AV_JOIN(FMT_CHAR, BIT_DEPTH) |
| |
| #define | fn(name) bitfn(name, FN_SUFFIX) |
| |
| #define | av_q2pixel(q) ((q).den ? (pixel_t) (q).num / (q).den : 0) |
| |
| #define | bump_ptr(ptr, bump) ((pixel_t *) ((uintptr_t) (ptr) + (bump))) |
| |
| #define | DECL_FUNC(NAME, ...) |
| |
| #define | DECL_READ(NAME, ...) |
| |
| #define | DECL_WRITE(NAME, ...) |
| |
| #define | CALL(FUNC, ...) fn(FUNC)(iter, impl, x, y, z, w, __VA_ARGS__) |
| |
| #define | CALL_READ(FUNC, ...) |
| |
| #define | CALL_WRITE(FUNC, ...) |
| |
| #define | DECL_IMPL(FUNC, NAME, ...) |
| |
| #define | CONTINUE(X, Y, Z, W) |
| |
| #define | DECL_SETUP(NAME, PARAMS, OUT) static int fn(NAME)(const SwsImplParams *PARAMS, SwsImplResult *OUT) |
| |
| #define | SETUP_MEMDUP(c, out) ff_setup_memdup(&(c), sizeof(c), out) |
| |
| #define | DECL_ENTRY(NAME, MASK, ...) |
| |
| #define | DECL_PATTERN(NAME) DECL_FUNC(NAME, const bool X, const bool Y, const bool Z, const bool W) |
| |
| #define | WRAP_PATTERN(FUNC, X, Y, Z, W, ...) |
| |
| #define | WRAP_COMMON_PATTERNS(FUNC, ...) |
| |
| #define | REF_COMMON_PATTERNS(NAME) |
| |
◆ SWS_LOOP
◆ bitfn2
| #define bitfn2 |
( |
|
name, |
|
|
|
ext |
|
) |
| name ## _ ## ext |
◆ bitfn
◆ FN_SUFFIX
◆ fn
◆ av_q2pixel
| #define av_q2pixel |
( |
|
q | ) |
((q).den ? (pixel_t) (q).num / (q).den : 0) |
◆ bump_ptr
| #define bump_ptr |
( |
|
ptr, |
|
|
|
bump |
|
) |
| ((pixel_t *) ((uintptr_t) (ptr) + (bump))) |
◆ DECL_FUNC
| #define DECL_FUNC |
( |
|
NAME, |
|
|
|
... |
|
) |
| |
◆ DECL_READ
| #define DECL_READ |
( |
|
NAME, |
|
|
|
... |
|
) |
| |
◆ DECL_WRITE
| #define DECL_WRITE |
( |
|
NAME, |
|
|
|
... |
|
) |
| |
◆ CALL
| #define CALL |
( |
|
FUNC, |
|
|
|
... |
|
) |
| fn(FUNC)(iter, impl, x, y, z, w, __VA_ARGS__) |
◆ CALL_READ
| #define CALL_READ |
( |
|
FUNC, |
|
|
|
... |
|
) |
| |
◆ CALL_WRITE
| #define CALL_WRITE |
( |
|
FUNC, |
|
|
|
... |
|
) |
| |
◆ DECL_IMPL
| #define DECL_IMPL |
( |
|
FUNC, |
|
|
|
NAME, |
|
|
|
... |
|
) |
| |
Value:
void *restrict x, void *restrict y, \
void *restrict z,
void *restrict
w) \
{ \
CALL(
FUNC, __VA_ARGS__); \
}
Definition at line 105 of file ops_backend.h.
◆ CONTINUE
| #define CONTINUE |
( |
|
X, |
|
|
|
Y, |
|
|
|
Z, |
|
|
|
W |
|
) |
| |
Value:
void *restrict, void *restrict, \
void *restrict, void *restrict)) impl->cont) \
(iter, &impl[1], (
X), (
Y), (Z), (
W))
Definition at line 115 of file ops_backend.h.
◆ DECL_SETUP
◆ SETUP_MEMDUP
◆ DECL_ENTRY
| #define DECL_ENTRY |
( |
|
NAME, |
|
|
|
MASK, |
|
|
|
... |
|
) |
| |
◆ DECL_PATTERN
| #define DECL_PATTERN |
( |
|
NAME | ) |
DECL_FUNC(NAME, const bool X, const bool Y, const bool Z, const bool W) |
◆ WRAP_PATTERN
| #define WRAP_PATTERN |
( |
|
FUNC, |
|
|
|
X, |
|
|
|
Y, |
|
|
|
Z, |
|
|
|
W, |
|
|
|
... |
|
) |
| |
◆ WRAP_COMMON_PATTERNS
| #define WRAP_COMMON_PATTERNS |
( |
|
FUNC, |
|
|
|
... |
|
) |
| |
Value:
WRAP_PATTERN(
FUNC, 1, 0, 0, 1, __VA_ARGS__); \
WRAP_PATTERN(
FUNC, 1, 1, 1, 0, __VA_ARGS__); \
WRAP_PATTERN(
FUNC, 1, 1, 1, 1, __VA_ARGS__)
Definition at line 150 of file ops_backend.h.
◆ REF_COMMON_PATTERNS
| #define REF_COMMON_PATTERNS |
( |
|
NAME | ) |
|
◆ ff_setup_memdup()
| static int ff_setup_memdup |
( |
const void * |
c, |
|
|
size_t |
size, |
|
|
SwsImplResult * |
out |
|
) |
| |
|
inlinestatic |