Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(464)

Side by Side Diff: source/row_any.cc

Issue 2600713002: Add MSA optimized RAW/RGB/ARGB to ARGB/Y/UV row functions (Closed)
Patch Set: Resolved merge conflicts Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « source/convert_argb.cc ('k') | source/row_msa.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2012 The LibYuv Project Authors. All rights reserved. 2 * Copyright 2012 The LibYuv Project Authors. All rights reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source 5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 10
(...skipping 436 matching lines...) Expand 10 before | Expand all | Expand 10 after
447 #endif 447 #endif
448 #ifdef HAS_ABGRTOYROW_NEON 448 #ifdef HAS_ABGRTOYROW_NEON
449 ANY11(ABGRToYRow_Any_NEON, ABGRToYRow_NEON, 0, 4, 1, 7) 449 ANY11(ABGRToYRow_Any_NEON, ABGRToYRow_NEON, 0, 4, 1, 7)
450 #endif 450 #endif
451 #ifdef HAS_RGBATOYROW_NEON 451 #ifdef HAS_RGBATOYROW_NEON
452 ANY11(RGBAToYRow_Any_NEON, RGBAToYRow_NEON, 0, 4, 1, 7) 452 ANY11(RGBAToYRow_Any_NEON, RGBAToYRow_NEON, 0, 4, 1, 7)
453 #endif 453 #endif
454 #ifdef HAS_RGB24TOYROW_NEON 454 #ifdef HAS_RGB24TOYROW_NEON
455 ANY11(RGB24ToYRow_Any_NEON, RGB24ToYRow_NEON, 0, 3, 1, 7) 455 ANY11(RGB24ToYRow_Any_NEON, RGB24ToYRow_NEON, 0, 3, 1, 7)
456 #endif 456 #endif
457 #ifdef HAS_RGB24TOYROW_MSA
458 ANY11(RGB24ToYRow_Any_MSA, RGB24ToYRow_MSA, 0, 3, 1, 15)
459 #endif
457 #ifdef HAS_RAWTOYROW_NEON 460 #ifdef HAS_RAWTOYROW_NEON
458 ANY11(RAWToYRow_Any_NEON, RAWToYRow_NEON, 0, 3, 1, 7) 461 ANY11(RAWToYRow_Any_NEON, RAWToYRow_NEON, 0, 3, 1, 7)
459 #endif 462 #endif
463 #ifdef HAS_RAWTOYROW_MSA
464 ANY11(RAWToYRow_Any_MSA, RAWToYRow_MSA, 0, 3, 1, 15)
465 #endif
460 #ifdef HAS_RGB565TOYROW_NEON 466 #ifdef HAS_RGB565TOYROW_NEON
461 ANY11(RGB565ToYRow_Any_NEON, RGB565ToYRow_NEON, 0, 2, 1, 7) 467 ANY11(RGB565ToYRow_Any_NEON, RGB565ToYRow_NEON, 0, 2, 1, 7)
462 #endif 468 #endif
469 #ifdef HAS_RGB565TOYROW_MSA
470 ANY11(RGB565ToYRow_Any_MSA, RGB565ToYRow_MSA, 0, 2, 1, 15)
471 #endif
463 #ifdef HAS_ARGB1555TOYROW_NEON 472 #ifdef HAS_ARGB1555TOYROW_NEON
464 ANY11(ARGB1555ToYRow_Any_NEON, ARGB1555ToYRow_NEON, 0, 2, 1, 7) 473 ANY11(ARGB1555ToYRow_Any_NEON, ARGB1555ToYRow_NEON, 0, 2, 1, 7)
465 #endif 474 #endif
475 #ifdef HAS_ARGB1555TOYROW_MSA
476 ANY11(ARGB1555ToYRow_Any_MSA, ARGB1555ToYRow_MSA, 0, 2, 1, 15)
477 #endif
466 #ifdef HAS_ARGB4444TOYROW_NEON 478 #ifdef HAS_ARGB4444TOYROW_NEON
467 ANY11(ARGB4444ToYRow_Any_NEON, ARGB4444ToYRow_NEON, 0, 2, 1, 7) 479 ANY11(ARGB4444ToYRow_Any_NEON, ARGB4444ToYRow_NEON, 0, 2, 1, 7)
468 #endif 480 #endif
469 #ifdef HAS_YUY2TOYROW_NEON 481 #ifdef HAS_YUY2TOYROW_NEON
470 ANY11(YUY2ToYRow_Any_NEON, YUY2ToYRow_NEON, 1, 4, 1, 15) 482 ANY11(YUY2ToYRow_Any_NEON, YUY2ToYRow_NEON, 1, 4, 1, 15)
471 #endif 483 #endif
472 #ifdef HAS_UYVYTOYROW_NEON 484 #ifdef HAS_UYVYTOYROW_NEON
473 ANY11(UYVYToYRow_Any_NEON, UYVYToYRow_NEON, 1, 4, 1, 15) 485 ANY11(UYVYToYRow_Any_NEON, UYVYToYRow_NEON, 1, 4, 1, 15)
474 #endif 486 #endif
475 #ifdef HAS_YUY2TOYROW_MSA 487 #ifdef HAS_YUY2TOYROW_MSA
476 ANY11(YUY2ToYRow_Any_MSA, YUY2ToYRow_MSA, 1, 4, 1, 31) 488 ANY11(YUY2ToYRow_Any_MSA, YUY2ToYRow_MSA, 1, 4, 1, 31)
477 #endif 489 #endif
478 #ifdef HAS_UYVYTOYROW_MSA 490 #ifdef HAS_UYVYTOYROW_MSA
479 ANY11(UYVYToYRow_Any_MSA, UYVYToYRow_MSA, 1, 4, 1, 31) 491 ANY11(UYVYToYRow_Any_MSA, UYVYToYRow_MSA, 1, 4, 1, 31)
480 #endif 492 #endif
481 #ifdef HAS_RGB24TOARGBROW_NEON 493 #ifdef HAS_RGB24TOARGBROW_NEON
482 ANY11(RGB24ToARGBRow_Any_NEON, RGB24ToARGBRow_NEON, 0, 3, 4, 7) 494 ANY11(RGB24ToARGBRow_Any_NEON, RGB24ToARGBRow_NEON, 0, 3, 4, 7)
483 #endif 495 #endif
496 #ifdef HAS_RGB24TOARGBROW_MSA
497 ANY11(RGB24ToARGBRow_Any_MSA, RGB24ToARGBRow_MSA, 0, 3, 4, 15)
498 #endif
484 #ifdef HAS_RAWTOARGBROW_NEON 499 #ifdef HAS_RAWTOARGBROW_NEON
485 ANY11(RAWToARGBRow_Any_NEON, RAWToARGBRow_NEON, 0, 3, 4, 7) 500 ANY11(RAWToARGBRow_Any_NEON, RAWToARGBRow_NEON, 0, 3, 4, 7)
486 #endif 501 #endif
502 #ifdef HAS_RAWTOARGBROW_MSA
503 ANY11(RAWToARGBRow_Any_MSA, RAWToARGBRow_MSA, 0, 3, 4, 15)
504 #endif
487 #ifdef HAS_RGB565TOARGBROW_NEON 505 #ifdef HAS_RGB565TOARGBROW_NEON
488 ANY11(RGB565ToARGBRow_Any_NEON, RGB565ToARGBRow_NEON, 0, 2, 4, 7) 506 ANY11(RGB565ToARGBRow_Any_NEON, RGB565ToARGBRow_NEON, 0, 2, 4, 7)
489 #endif 507 #endif
508 #ifdef HAS_RGB565TOARGBROW_MSA
509 ANY11(RGB565ToARGBRow_Any_MSA, RGB565ToARGBRow_MSA, 0, 2, 4, 15)
510 #endif
490 #ifdef HAS_ARGB1555TOARGBROW_NEON 511 #ifdef HAS_ARGB1555TOARGBROW_NEON
491 ANY11(ARGB1555ToARGBRow_Any_NEON, ARGB1555ToARGBRow_NEON, 0, 2, 4, 7) 512 ANY11(ARGB1555ToARGBRow_Any_NEON, ARGB1555ToARGBRow_NEON, 0, 2, 4, 7)
492 #endif 513 #endif
514 #ifdef HAS_ARGB1555TOARGBROW_MSA
515 ANY11(ARGB1555ToARGBRow_Any_MSA, ARGB1555ToARGBRow_MSA, 0, 2, 4, 15)
516 #endif
493 #ifdef HAS_ARGB4444TOARGBROW_NEON 517 #ifdef HAS_ARGB4444TOARGBROW_NEON
494 ANY11(ARGB4444ToARGBRow_Any_NEON, ARGB4444ToARGBRow_NEON, 0, 2, 4, 7) 518 ANY11(ARGB4444ToARGBRow_Any_NEON, ARGB4444ToARGBRow_NEON, 0, 2, 4, 7)
495 #endif 519 #endif
496 #ifdef HAS_RGB24TOARGBROW_DSPR2 520 #ifdef HAS_RGB24TOARGBROW_DSPR2
497 ANY11(RGB24ToARGBRow_Any_DSPR2, RGB24ToARGBRow_DSPR2, 0, 3, 4, 7) 521 ANY11(RGB24ToARGBRow_Any_DSPR2, RGB24ToARGBRow_DSPR2, 0, 3, 4, 7)
498 #endif 522 #endif
499 #ifdef HAS_RAWTOARGBROW_DSPR2 523 #ifdef HAS_RAWTOARGBROW_DSPR2
500 ANY11(RAWToARGBRow_Any_DSPR2, RAWToARGBRow_DSPR2, 0, 3, 4, 7) 524 ANY11(RAWToARGBRow_Any_DSPR2, RAWToARGBRow_DSPR2, 0, 3, 4, 7)
501 #endif 525 #endif
502 #ifdef HAS_RGB565TOARGBROW_DSPR2 526 #ifdef HAS_RGB565TOARGBROW_DSPR2
(...skipping 412 matching lines...) Expand 10 before | Expand all | Expand 10 after
915 #endif 939 #endif
916 #ifdef HAS_ABGRTOUVROW_NEON 940 #ifdef HAS_ABGRTOUVROW_NEON
917 ANY12S(ABGRToUVRow_Any_NEON, ABGRToUVRow_NEON, 0, 4, 15) 941 ANY12S(ABGRToUVRow_Any_NEON, ABGRToUVRow_NEON, 0, 4, 15)
918 #endif 942 #endif
919 #ifdef HAS_RGBATOUVROW_NEON 943 #ifdef HAS_RGBATOUVROW_NEON
920 ANY12S(RGBAToUVRow_Any_NEON, RGBAToUVRow_NEON, 0, 4, 15) 944 ANY12S(RGBAToUVRow_Any_NEON, RGBAToUVRow_NEON, 0, 4, 15)
921 #endif 945 #endif
922 #ifdef HAS_RGB24TOUVROW_NEON 946 #ifdef HAS_RGB24TOUVROW_NEON
923 ANY12S(RGB24ToUVRow_Any_NEON, RGB24ToUVRow_NEON, 0, 3, 15) 947 ANY12S(RGB24ToUVRow_Any_NEON, RGB24ToUVRow_NEON, 0, 3, 15)
924 #endif 948 #endif
949 #ifdef HAS_RGB24TOUVROW_MSA
950 ANY12S(RGB24ToUVRow_Any_MSA, RGB24ToUVRow_MSA, 0, 3, 15)
951 #endif
925 #ifdef HAS_RAWTOUVROW_NEON 952 #ifdef HAS_RAWTOUVROW_NEON
926 ANY12S(RAWToUVRow_Any_NEON, RAWToUVRow_NEON, 0, 3, 15) 953 ANY12S(RAWToUVRow_Any_NEON, RAWToUVRow_NEON, 0, 3, 15)
927 #endif 954 #endif
955 #ifdef HAS_RAWTOUVROW_MSA
956 ANY12S(RAWToUVRow_Any_MSA, RAWToUVRow_MSA, 0, 3, 15)
957 #endif
928 #ifdef HAS_RGB565TOUVROW_NEON 958 #ifdef HAS_RGB565TOUVROW_NEON
929 ANY12S(RGB565ToUVRow_Any_NEON, RGB565ToUVRow_NEON, 0, 2, 15) 959 ANY12S(RGB565ToUVRow_Any_NEON, RGB565ToUVRow_NEON, 0, 2, 15)
930 #endif 960 #endif
961 #ifdef HAS_RGB565TOUVROW_MSA
962 ANY12S(RGB565ToUVRow_Any_MSA, RGB565ToUVRow_MSA, 0, 2, 15)
963 #endif
931 #ifdef HAS_ARGB1555TOUVROW_NEON 964 #ifdef HAS_ARGB1555TOUVROW_NEON
932 ANY12S(ARGB1555ToUVRow_Any_NEON, ARGB1555ToUVRow_NEON, 0, 2, 15) 965 ANY12S(ARGB1555ToUVRow_Any_NEON, ARGB1555ToUVRow_NEON, 0, 2, 15)
933 #endif 966 #endif
967 #ifdef HAS_ARGB1555TOUVROW_MSA
968 ANY12S(ARGB1555ToUVRow_Any_MSA, ARGB1555ToUVRow_MSA, 0, 2, 15)
969 #endif
934 #ifdef HAS_ARGB4444TOUVROW_NEON 970 #ifdef HAS_ARGB4444TOUVROW_NEON
935 ANY12S(ARGB4444ToUVRow_Any_NEON, ARGB4444ToUVRow_NEON, 0, 2, 15) 971 ANY12S(ARGB4444ToUVRow_Any_NEON, ARGB4444ToUVRow_NEON, 0, 2, 15)
936 #endif 972 #endif
937 #ifdef HAS_YUY2TOUVROW_NEON 973 #ifdef HAS_YUY2TOUVROW_NEON
938 ANY12S(YUY2ToUVRow_Any_NEON, YUY2ToUVRow_NEON, 1, 4, 15) 974 ANY12S(YUY2ToUVRow_Any_NEON, YUY2ToUVRow_NEON, 1, 4, 15)
939 #endif 975 #endif
940 #ifdef HAS_UYVYTOUVROW_NEON 976 #ifdef HAS_UYVYTOUVROW_NEON
941 ANY12S(UYVYToUVRow_Any_NEON, UYVYToUVRow_NEON, 1, 4, 15) 977 ANY12S(UYVYToUVRow_Any_NEON, UYVYToUVRow_NEON, 1, 4, 15)
942 #endif 978 #endif
943 #ifdef HAS_BGRATOUVROW_DSPR2 979 #ifdef HAS_BGRATOUVROW_DSPR2
(...skipping 13 matching lines...) Expand all
957 #endif 993 #endif
958 #ifdef HAS_UYVYTOUVROW_MSA 994 #ifdef HAS_UYVYTOUVROW_MSA
959 ANY12S(UYVYToUVRow_Any_MSA, UYVYToUVRow_MSA, 1, 4, 31) 995 ANY12S(UYVYToUVRow_Any_MSA, UYVYToUVRow_MSA, 1, 4, 31)
960 #endif 996 #endif
961 #undef ANY12S 997 #undef ANY12S
962 998
963 #ifdef __cplusplus 999 #ifdef __cplusplus
964 } // extern "C" 1000 } // extern "C"
965 } // namespace libyuv 1001 } // namespace libyuv
966 #endif 1002 #endif
OLDNEW
« no previous file with comments | « source/convert_argb.cc ('k') | source/row_msa.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698