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

Side by Side Diff: third_party/qcms/google.patch

Issue 18112005: silence qcms __force_align_arg_pointer__ warning on mips too (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 7 years, 5 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 | « third_party/qcms/README.chromium ('k') | third_party/qcms/src/transform.c » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 diff --git a/third_party/qcms/src/iccread.c b/third_party/qcms/src/iccread.c 1 diff --git a/third_party/qcms/src/iccread.c b/third_party/qcms/src/iccread.c
2 index 36b7011..d3c3dfe 100644 2 index 36b7011..d3c3dfe 100644
3 --- a/third_party/qcms/src/iccread.c 3 --- a/third_party/qcms/src/iccread.c
4 +++ b/third_party/qcms/src/iccread.c 4 +++ b/third_party/qcms/src/iccread.c
5 @@ -266,7 +266,7 @@ qcms_bool qcms_profile_is_bogus(qcms_profile *profile) 5 @@ -266,7 +266,7 @@ qcms_bool qcms_profile_is_bogus(qcms_profile *profile)
6 if (profile->color_space != RGB_SIGNATURE) 6 if (profile->color_space != RGB_SIGNATURE)
7 return false; 7 return false;
8 8
9 - if (profile->A2B0 || profile->B2A0) 9 - if (profile->A2B0 || profile->B2A0)
10 + if (qcms_supports_iccv4 && (profile->A2B0 || profile->B2A0)) 10 + if (qcms_supports_iccv4 && (profile->A2B0 || profile->B2A0))
(...skipping 730 matching lines...) Expand 10 before | Expand all | Expand 10 after
741 +#if defined(SSE2_ENABLE) && !(defined(_MSC_VER) && defined(_M_AMD64)) 741 +#if defined(SSE2_ENABLE) && !(defined(_MSC_VER) && defined(_M_AMD64))
742 /* Microsoft Compiler for x64 doesn't support MMX. 742 /* Microsoft Compiler for x64 doesn't support MMX.
743 * SSE code uses MMX so that we disable on x64 */ 743 * SSE code uses MMX so that we disable on x64 */
744 } else 744 } else
745 @@ -1256,13 +1323,34 @@ qcms_transform* qcms_transform_create( 745 @@ -1256,13 +1323,34 @@ qcms_transform* qcms_transform_create(
746 return transform; 746 return transform;
747 } 747 }
748 748
749 -#if defined(__GNUC__) && !defined(__x86_64__) && !defined(__amd64__) 749 -#if defined(__GNUC__) && !defined(__x86_64__) && !defined(__amd64__)
750 +/* __force_align_arg_pointer__ is an x86-only attribute, and gcc/clang warns on unused 750 +/* __force_align_arg_pointer__ is an x86-only attribute, and gcc/clang warns on unused
751 + * attributes. Don't use this on ARM or AMD64. __has_attribute can detect the p resence 751 + * attributes. Don't use this on ARM, AMD64 or MIPS. __has_attribute can detect the presence
752 + * of the attribute but is currently only supported by clang */ 752 + * of the attribute but is currently only supported by clang */
753 +#if defined(__has_attribute) 753 +#if defined(__has_attribute)
754 +#define HAS_FORCE_ALIGN_ARG_POINTER __has_attribute(__force_align_arg_pointer__ ) 754 +#define HAS_FORCE_ALIGN_ARG_POINTER __has_attribute(__force_align_arg_pointer__ )
755 +#elif defined(__GNUC__) && !defined(__x86_64__) && !defined(__amd64__) && !defi ned(__arm__) 755 +#elif defined(__GNUC__) && !defined(__x86_64__) && !defined(__amd64__) && !defi ned(__arm__) && !defined(__mips__)
756 +#define HAS_FORCE_ALIGN_ARG_POINTER 1 756 +#define HAS_FORCE_ALIGN_ARG_POINTER 1
757 +#else 757 +#else
758 +#define HAS_FORCE_ALIGN_ARG_POINTER 0 758 +#define HAS_FORCE_ALIGN_ARG_POINTER 0
759 +#endif 759 +#endif
760 + 760 +
761 +#if HAS_FORCE_ALIGN_ARG_POINTER 761 +#if HAS_FORCE_ALIGN_ARG_POINTER
762 /* we need this to avoid crashes when gcc assumes the stack is 128bit aligned * / 762 /* we need this to avoid crashes when gcc assumes the stack is 128bit aligned * /
763 __attribute__((__force_align_arg_pointer__)) 763 __attribute__((__force_align_arg_pointer__))
764 #endif 764 #endif
765 void qcms_transform_data(qcms_transform *transform, void *src, void *dest, size _t length) 765 void qcms_transform_data(qcms_transform *transform, void *src, void *dest, size _t length)
(...skipping 116 matching lines...) Expand 10 before | Expand all | Expand 10 after
882 882
883 -float lut_interp_linear(double value, uint16_t *table, int length); 883 -float lut_interp_linear(double value, uint16_t *table, int length);
884 -float lut_interp_linear_float(float value, float *table, int length); 884 -float lut_interp_linear_float(float value, float *table, int length);
885 -uint16_t lut_interp_linear16(uint16_t input_value, uint16_t *table, int length) ; 885 -uint16_t lut_interp_linear16(uint16_t input_value, uint16_t *table, int length) ;
886 +float lut_interp_linear(double value, uint16_t *table, size_t length); 886 +float lut_interp_linear(double value, uint16_t *table, size_t length);
887 +float lut_interp_linear_float(float value, float *table, size_t length); 887 +float lut_interp_linear_float(float value, float *table, size_t length);
888 +uint16_t lut_interp_linear16(uint16_t input_value, uint16_t *table, size_t leng th); 888 +uint16_t lut_interp_linear16(uint16_t input_value, uint16_t *table, size_t leng th);
889 889
890 890
891 static inline float lerp(float a, float b, float t) 891 static inline float lerp(float a, float b, float t)
OLDNEW
« no previous file with comments | « third_party/qcms/README.chromium ('k') | third_party/qcms/src/transform.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698