swscale/x86: use dedicated int for self-modifying MMX dstW

I want to pull options out of SwsInternal, so we need to make this field
a dedicated int that gets updated as appropriate in ff_swscale().

Sponsored-by: Sovereign Tech Fund
Signed-off-by: Niklas Haas <git@haasn.dev>
master
Niklas Haas 1 month ago
parent b03c758600
commit f1f54d2f82
  1. 1
      libswscale/swscale.c
  2. 3
      libswscale/swscale_internal.h

@ -488,6 +488,7 @@ int ff_swscale(SwsContext *c, const uint8_t *const src[], const int srcStride[],
#if HAVE_MMX_INLINE #if HAVE_MMX_INLINE
ff_updateMMXDitherTables(c, dstY); ff_updateMMXDitherTables(c, dstY);
c->dstW_mmx = c->dstW;
#endif #endif
if (should_dither) { if (should_dither) {
c->chrDither8 = ff_dither_8x8_128[chrDstY & 7]; c->chrDither8 = ff_dither_8x8_128[chrDstY & 7];

@ -345,6 +345,7 @@ struct SwsContext {
SwsFunc convert_unscaled; SwsFunc convert_unscaled;
int srcW; ///< Width of source luma/alpha planes. int srcW; ///< Width of source luma/alpha planes.
int srcH; ///< Height of source luma/alpha planes. int srcH; ///< Height of source luma/alpha planes.
int dstW; ///< Width of destination luma/alpha planes.
int dstH; ///< Height of destination luma/alpha planes. int dstH; ///< Height of destination luma/alpha planes.
int chrSrcW; ///< Width of source chroma planes. int chrSrcW; ///< Width of source chroma planes.
int chrSrcH; ///< Height of source chroma planes. int chrSrcH; ///< Height of source chroma planes.
@ -534,7 +535,7 @@ struct SwsContext {
DECLARE_ALIGNED(8, uint64_t, vOffset); DECLARE_ALIGNED(8, uint64_t, vOffset);
int32_t lumMmxFilter[4 * MAX_FILTER_SIZE]; int32_t lumMmxFilter[4 * MAX_FILTER_SIZE];
int32_t chrMmxFilter[4 * MAX_FILTER_SIZE]; int32_t chrMmxFilter[4 * MAX_FILTER_SIZE];
int dstW; ///< Width of destination luma/alpha planes. int dstW_mmx;
DECLARE_ALIGNED(8, uint64_t, esp); DECLARE_ALIGNED(8, uint64_t, esp);
DECLARE_ALIGNED(8, uint64_t, vRounder); DECLARE_ALIGNED(8, uint64_t, vRounder);
DECLARE_ALIGNED(8, uint64_t, u_temp); DECLARE_ALIGNED(8, uint64_t, u_temp);

Loading…
Cancel
Save