It is not even clear what these emms_c() are supposed to achieve: create_filtergraph() (where it may be called) does not call ASM functions itself; it merely sets some function pointers. Furthermore, there are no colorspacedsp functions using MMX (checked by checkasm which does not use declare_new_emms()). Finally, checking whether to issue emms_c() is overblown anyway.
Unified · Split
| @@ -400,7 +400,7 @@ static int create_filtergraph(AVFilterContext *ctx, · 399 unmodified lines | |||
| 400 | ColorSpaceContext *s = ctx->priv; | 400 | ColorSpaceContext *s = ctx->priv; |
| 401 | const AVPixFmtDescriptor *in_desc = av_pix_fmt_desc_get(in->format); | 401 | const AVPixFmtDescriptor *in_desc = av_pix_fmt_desc_get(in->format); |
| 402 | const AVPixFmtDescriptor *out_desc = av_pix_fmt_desc_get(out->format); | 402 | const AVPixFmtDescriptor *out_desc = av_pix_fmt_desc_get(out->format); |
| 403 | int emms = 0, m, n, o, res, fmt_identical, redo_yuv2rgb = 0, redo_rgb2yuv = 0; | 403 | int m, n, o, res, fmt_identical, redo_yuv2rgb = 0, redo_rgb2yuv = 0; |
| 404 | 404 | ||
| 405 | #define supported_depth(d) ((d) == 8 || (d) == 10 || (d) == 12) | 405 | #define supported_depth(d) ((d) == 8 || (d) == 10 || (d) == 12) |
| 406 | #define supported_subsampling(lcw, lch) \ | 406 | #define supported_subsampling(lcw, lch) \ |
| @@ -494,7 +494,6 @@ static int create_filtergraph(AVFilterContext *ctx, · 87 unmodified lines | |||
| 494 | s->lrgb2lrgb_coeffs[m][n][o] = s->lrgb2lrgb_coeffs[m][n][0]; | 494 | s->lrgb2lrgb_coeffs[m][n][o] = s->lrgb2lrgb_coeffs[m][n][0]; |
| 495 | } | 495 | } |
| 496 | 496 | ||
| 497 | emms = 1; | ||
| 498 | } | 497 | } |
| 499 | } | 498 | } |
| 500 | 499 | ||
| @@ -542,7 +541,6 @@ static int create_filtergraph(AVFilterContext *ctx, · 41 unmodified lines | |||
| 542 | res = fill_gamma_table(s); | 541 | res = fill_gamma_table(s); |
| 543 | if (res < 0) | 542 | if (res < 0) |
| 544 | return res; | 543 | return res; |
| 545 | emms = 1; | ||
| 546 | } | 544 | } |
| 547 | 545 | ||
| 548 | if (!s->in_lumacoef) { | 546 | if (!s->in_lumacoef) { |
| @@ -625,7 +623,6 @@ static int create_filtergraph(AVFilterContext *ctx, · 76 unmodified lines | |||
| 625 | av_assert2(s->yuv2rgb_coeffs[0][0][0] == s->yuv2rgb_coeffs[2][0][0]); | 623 | av_assert2(s->yuv2rgb_coeffs[0][0][0] == s->yuv2rgb_coeffs[2][0][0]); |
| 626 | s->yuv2rgb = s->dsp.yuv2rgb[(in_desc->comp[0].depth - 8) >> 1] | 624 | s->yuv2rgb = s->dsp.yuv2rgb[(in_desc->comp[0].depth - 8) >> 1] |
| 627 | [in_desc->log2_chroma_h + in_desc->log2_chroma_w]; | 625 | [in_desc->log2_chroma_h + in_desc->log2_chroma_w]; |
| 628 | emms = 1; | ||
| 629 | } | 626 | } |
| 630 | 627 | ||
| 631 | if (redo_rgb2yuv) { | 628 | if (redo_rgb2yuv) { |
| @@ -656,7 +653,6 @@ static int create_filtergraph(AVFilterContext *ctx, · 24 unmodified lines | |||
| 656 | [out_desc->log2_chroma_h + out_desc->log2_chroma_w]; | 653 | [out_desc->log2_chroma_h + out_desc->log2_chroma_w]; |
| 657 | s->rgb2yuv_fsb = s->dsp.rgb2yuv_fsb[(out_desc->comp[0].depth - 8) >> 1] | 654 | s->rgb2yuv_fsb = s->dsp.rgb2yuv_fsb[(out_desc->comp[0].depth - 8) >> 1] |
| 658 | [out_desc->log2_chroma_h + out_desc->log2_chroma_w]; | 655 | [out_desc->log2_chroma_h + out_desc->log2_chroma_w]; |
| 659 | emms = 1; | ||
| 660 | } | 656 | } |
| 661 | 657 | ||
| 662 | if (s->yuv2yuv_fastmode && (redo_yuv2rgb || redo_rgb2yuv)) { | 658 | if (s->yuv2yuv_fastmode && (redo_yuv2rgb || redo_rgb2yuv)) { |
| @@ -683,9 +679,6 @@ static int create_filtergraph(AVFilterContext *ctx, · 20 unmodified lines | |||
| 683 | } | 679 | } |
| 684 | } | 680 | } |
| 685 | 681 | ||
| 686 | if (emms) | ||
| 687 | emms_c(); | ||
| 688 | |||
| 689 | return 0; | 682 | return 0; |
| 690 | } | 683 | } |
| 691 | 684 | ||