[FFmpeg-cvslog] avcodec/intrax8dsp: Constify DSP functions
Andreas Rheinhardt
git at videolan.org
Thu Feb 27 16:54:47 EET 2025
ffmpeg | branch: master | Andreas Rheinhardt <andreas.rheinhardt at outlook.com> | Sun Feb 23 20:44:48 2025 +0100| [6f31b05389ae7edf29407aad77916c43c51841e6] | committer: Andreas Rheinhardt
avcodec/intrax8dsp: Constify DSP functions
Also add restrict where possible.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=6f31b05389ae7edf29407aad77916c43c51841e6
---
libavcodec/intrax8dsp.c | 29 +++++++++++++++--------------
libavcodec/intrax8dsp.h | 4 ++--
2 files changed, 17 insertions(+), 16 deletions(-)
diff --git a/libavcodec/intrax8dsp.c b/libavcodec/intrax8dsp.c
index 80c3929f71..ff22aecae2 100644
--- a/libavcodec/intrax8dsp.c
+++ b/libavcodec/intrax8dsp.c
@@ -62,11 +62,12 @@
note: 1|2 - mb_x==mb_y==0 - first block, use 0x80 value for all areas;
4 - mb_x>= (mb_width-1) last block in the row, interpolate area #5;
-*/
-static void x8_setup_spatial_compensation(uint8_t *src, uint8_t *dst,
+static void x8_setup_spatial_compensation(const uint8_t *restrict src,
+ uint8_t *restrict dst,
ptrdiff_t stride, int *range,
int *psum, int edges)
{
- uint8_t *ptr;
+ const uint8_t *ptr;
int sum;
int i;
int min_pix, max_pix;
@@ -160,7 +161,7 @@ static const uint16_t zero_prediction_weights[64 * 2] = {
317, 846, 366, 731, 458, 611, 499, 499,
};
-static void spatial_compensation_0(uint8_t *src, uint8_t *dst, ptrdiff_t stride)
+static void spatial_compensation_0(const uint8_t *restrict src, uint8_t *restrict dst, ptrdiff_t stride)
{
int i, j;
int x, y;
@@ -212,7 +213,7 @@ static void spatial_compensation_0(uint8_t *src, uint8_t *dst, ptrdiff_t stride)
}
}
-static void spatial_compensation_1(uint8_t *src, uint8_t *dst, ptrdiff_t stride)
+static void spatial_compensation_1(const uint8_t *restrict src, uint8_t *restrict dst, ptrdiff_t stride)
{
int x, y;
@@ -223,7 +224,7 @@ static void spatial_compensation_1(uint8_t *src, uint8_t *dst, ptrdiff_t stride)
}
}
-static void spatial_compensation_2(uint8_t *src, uint8_t *dst, ptrdiff_t stride)
+static void spatial_compensation_2(const uint8_t *restrict src, uint8_t *restrict dst, ptrdiff_t stride)
{
int x, y;
@@ -234,7 +235,7 @@ static void spatial_compensation_2(uint8_t *src, uint8_t *dst, ptrdiff_t stride)
}
}
-static void spatial_compensation_3(uint8_t *src, uint8_t *dst, ptrdiff_t stride)
+static void spatial_compensation_3(const uint8_t *restrict src, uint8_t *restrict dst, ptrdiff_t stride)
{
int x, y;
@@ -245,7 +246,7 @@ static void spatial_compensation_3(uint8_t *src, uint8_t *dst, ptrdiff_t stride)
}
}
-static void spatial_compensation_4(uint8_t *src, uint8_t *dst, ptrdiff_t stride)
+static void spatial_compensation_4(const uint8_t *restrict src, uint8_t *restrict dst, ptrdiff_t stride)
{
int x, y;
@@ -256,7 +257,7 @@ static void spatial_compensation_4(uint8_t *src, uint8_t *dst, ptrdiff_t stride)
}
}
-static void spatial_compensation_5(uint8_t *src, uint8_t *dst, ptrdiff_t stride)
+static void spatial_compensation_5(const uint8_t *restrict src, uint8_t *restrict dst, ptrdiff_t stride)
{
int x, y;
@@ -271,7 +272,7 @@ static void spatial_compensation_5(uint8_t *src, uint8_t *dst, ptrdiff_t stride)
}
}
-static void spatial_compensation_6(uint8_t *src, uint8_t *dst, ptrdiff_t stride)
+static void spatial_compensation_6(const uint8_t *restrict src, uint8_t *restrict dst, ptrdiff_t stride)
{
int x, y;
@@ -282,7 +283,7 @@ static void spatial_compensation_6(uint8_t *src, uint8_t *dst, ptrdiff_t stride)
}
}
-static void spatial_compensation_7(uint8_t *src, uint8_t *dst, ptrdiff_t stride)
+static void spatial_compensation_7(const uint8_t *restrict src, uint8_t *restrict dst, ptrdiff_t stride)
{
int x, y;
@@ -297,7 +298,7 @@ static void spatial_compensation_7(uint8_t *src, uint8_t *dst, ptrdiff_t stride)
}
}
-static void spatial_compensation_8(uint8_t *src, uint8_t *dst, ptrdiff_t stride)
+static void spatial_compensation_8(const uint8_t *restrict src, uint8_t *restrict dst, ptrdiff_t stride)
{
int x, y;
@@ -308,7 +309,7 @@ static void spatial_compensation_8(uint8_t *src, uint8_t *dst, ptrdiff_t stride)
}
}
-static void spatial_compensation_9(uint8_t *src, uint8_t *dst, ptrdiff_t stride)
+static void spatial_compensation_9(const uint8_t *restrict src, uint8_t *restrict dst, ptrdiff_t stride)
{
int x, y;
@@ -319,7 +320,7 @@ static void spatial_compensation_9(uint8_t *src, uint8_t *dst, ptrdiff_t stride)
}
}
-static void spatial_compensation_10(uint8_t *src, uint8_t *dst, ptrdiff_t stride)
+static void spatial_compensation_10(const uint8_t *restrict src, uint8_t *restrict dst, ptrdiff_t stride)
{
int x, y;
@@ -330,7 +331,7 @@ static void spatial_compensation_10(uint8_t *src, uint8_t *dst, ptrdiff_t stride
}
}
-static void spatial_compensation_11(uint8_t *src, uint8_t *dst, ptrdiff_t stride)
+static void spatial_compensation_11(const uint8_t *restrict src, uint8_t *restrict dst, ptrdiff_t stride)
{
int x, y;
diff --git a/libavcodec/intrax8dsp.h b/libavcodec/intrax8dsp.h
index bf42698ed7..6cf673c364 100644
--- a/libavcodec/intrax8dsp.h
+++ b/libavcodec/intrax8dsp.h
@@ -26,9 +26,9 @@ typedef struct IntraX8DSPContext {
void (*v_loop_filter)(uint8_t *src, ptrdiff_t stride, int qscale);
void (*h_loop_filter)(uint8_t *src, ptrdiff_t stride, int qscale);
- void (*spatial_compensation[12])(uint8_t *src, uint8_t *dst,
+ void (*spatial_compensation[12])(const uint8_t *restrict src, uint8_t *restrict dst,
ptrdiff_t stride);
- void (*setup_spatial_compensation)(uint8_t *src, uint8_t *dst,
+ void (*setup_spatial_compensation)(const uint8_t *restrict src, uint8_t *restrict dst,
ptrdiff_t stride, int *range,
int *sum, int edges);
} IntraX8DSPContext;
More information about the ffmpeg-cvslog
mailing list