On Thu, May 14, 2020 at 11:47 AM Michael Niedermayer <mich...@niedermayer.cc> wrote:
> On Fri, May 01, 2020 at 11:42:43AM -0700, Dale Curtis wrote: > > On Fri, May 1, 2020 at 10:57 AM Carl Eugen Hoyos <ceffm...@gmail.com> > wrote: > > > > > Could you confirm that you attached the wrong patch? > > > > > > > No, I sent the patches without completing the rebase. Sorry. > > > > - dale > > > common.h | 36 ++++++++++++++++++++++++++++++++++++ > > 1 file changed, 36 insertions(+) > > f5567ae046c0c2d4ac9053611457b9d9045b6ccb sat_math_v4.patch > > From 06c20d84e3bf0f56bcba63ef8e74812e796f3ffe Mon Sep 17 00:00:00 2001 > > From: Dale Curtis <dalecur...@chromium.org> > > Date: Thu, 30 Apr 2020 15:16:31 -0700 > > Subject: [PATCH 1/2] Add saturated add/sub operations for int64_t. > > > > Many places are using their own custom code for handling overflow > > around timestamps or other int64_t values. There are enough of these > > now that having some common saturated math functions seems sound. > > > > Signed-off-by: Dale Curtis <dalecur...@chromium.org> > > --- > > libavutil/common.h | 36 ++++++++++++++++++++++++++++++++++++ > > 1 file changed, 36 insertions(+) > > > > diff --git a/libavutil/common.h b/libavutil/common.h > > index 142ff9abe7..11907e5ba7 100644 > > --- a/libavutil/common.h > > +++ b/libavutil/common.h > > @@ -291,6 +291,36 @@ static av_always_inline int av_sat_dsub32_c(int a, > int b) > > return av_sat_sub32(a, av_sat_add32(b, b)); > > } > > > > +/** > > + * Add two signed 64-bit values with saturation. > > + * > > + * @param a one value > > + * @param b another value > > + * @return sum with signed saturation > > + */ > > +static av_always_inline int64_t av_sat_add64_c(int64_t a, int64_t b) { > > + if (b >= 0 && a >= INT64_MAX - b) > > + return INT64_MAX; > > + if (b <= 0 && a <= INT64_MIN - b) > > + return INT64_MIN; > > + return a + b; > > +} > > + > > +/** > > + * Subtract two signed 64-bit values with saturation. > > + * > > + * @param a one value > > + * @param b another value > > + * @return difference with signed saturation > > + */ > > +static av_always_inline int64_t av_sat_sub64_c(int64_t a, int64_t b) { > > + if (b <= 0 && a >= INT64_MAX + b) { > > + return INT64_MAX; > > + if (b >= 0 && a <= INT64_MIN + b) { > > + return INT64_MIN; > > the { are not paired with } > this will not build > > indention level also does not match the rest of the code > > Fixed, sorry about that. - dale
sat_math_v5.patch
Description: Binary data
_______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".