diff options
Diffstat (limited to 'src/post/deinterlace/plugins/greedy2frame_template.c')
-rw-r--r-- | src/post/deinterlace/plugins/greedy2frame_template.c | 15 |
1 files changed, 5 insertions, 10 deletions
diff --git a/src/post/deinterlace/plugins/greedy2frame_template.c b/src/post/deinterlace/plugins/greedy2frame_template.c index f9395cefd..9229adc1d 100644 --- a/src/post/deinterlace/plugins/greedy2frame_template.c +++ b/src/post/deinterlace/plugins/greedy2frame_template.c @@ -87,8 +87,10 @@ #if !defined(MASKS_DEFINED) #define MASKS_DEFINED - static const int64_t __attribute__((__used__)) Mask = 0x7f7f7f7f7f7f7f7fll; - static int64_t qwGreedyTwoFrameThreshold; +static const mmx_t Mask = { uq: 0x7f7f7f7f7f7f7f7fll }; +#define TP GREEDYTWOFRAMETHRESHOLD, GREEDYTWOFRAMETHRESHOLD2 +static const mmx_t GreedyTwoFrameThreshold = { ub: {TP, TP, TP, TP} }; +#undef TP #endif #if defined(IS_MMXEXT) @@ -121,13 +123,6 @@ static void DeinterlaceGreedy2Frame_MMX(uint8_t *output, int outstride, uint32_t LineLength = stride; uint32_t PitchRest = Pitch - (LineLength >> 3)*8; - qwGreedyTwoFrameThreshold = GreedyTwoFrameThreshold; - qwGreedyTwoFrameThreshold += (GreedyTwoFrameThreshold2 << 8); - qwGreedyTwoFrameThreshold += (qwGreedyTwoFrameThreshold << 48) + - (qwGreedyTwoFrameThreshold << 32) + - (qwGreedyTwoFrameThreshold << 16); - - if( second_field ) { M1 = data->f0; T1 = data->f0; @@ -300,7 +295,7 @@ static void DeinterlaceGreedy2Frame_MMX(uint8_t *output, int outstride, #endif : "=m" (*Dest2) - : "m" (*T0), "m" (*B0), "m" (qwGreedyTwoFrameThreshold) ); + : "m" (*T0), "m" (*B0), "m" (GreedyTwoFrameThreshold) ); /* Advance to the next set of pixels. */ T1 += 8; |