From 56fc5fc6ce9b4d3b9505a652d2a29f4f0662e4e2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20Denis-Courmont?= Date: Mon, 22 Jul 2024 20:49:10 +0300 Subject: [PATCH] lavc/vp9dsp: restrict vertical intra pointers This lets the compiler unroll ever so slightly better (at least in the 16x16 case for RISC-V GCC). --- libavcodec/vp9dsp_template.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/libavcodec/vp9dsp_template.c b/libavcodec/vp9dsp_template.c index 9b11661704..5c4fb5d6e2 100644 --- a/libavcodec/vp9dsp_template.c +++ b/libavcodec/vp9dsp_template.c @@ -30,7 +30,7 @@ // FIXME see whether we can merge parts of this (perhaps at least 4x4 and 8x8) // back with h264pred.[ch] -static void vert_4x4_c(uint8_t *_dst, ptrdiff_t stride, +static void vert_4x4_c(uint8_t *restrict _dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *_top) { pixel *dst = (pixel *) _dst; @@ -44,7 +44,7 @@ static void vert_4x4_c(uint8_t *_dst, ptrdiff_t stride, AV_WN4PA(dst + stride * 3, p4); } -static void vert_8x8_c(uint8_t *_dst, ptrdiff_t stride, +static void vert_8x8_c(uint8_t *restrict _dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *_top) { pixel *dst = (pixel *) _dst; @@ -61,7 +61,7 @@ static void vert_8x8_c(uint8_t *_dst, ptrdiff_t stride, } } -static void vert_16x16_c(uint8_t *_dst, ptrdiff_t stride, +static void vert_16x16_c(uint8_t *restrict _dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *_top) { pixel *dst = (pixel *) _dst; @@ -82,7 +82,7 @@ static void vert_16x16_c(uint8_t *_dst, ptrdiff_t stride, } } -static void vert_32x32_c(uint8_t *_dst, ptrdiff_t stride, +static void vert_32x32_c(uint8_t *restrict _dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *_top) { pixel *dst = (pixel *) _dst;