Граф коммитов

176 Коммитов

Автор SHA1 Сообщение Дата
Andrew Osmond e6fe246634 Bug 1558883 - Add QCMS transform correctness and performance tests. r=miko
Differential Revision: https://phabricator.services.mozilla.com/D34765
2019-06-25 09:45:56 -04:00
Andrew Osmond 3c03c2b472 Bug 1551844 - Implement NEON variations of QCMS ICCv2 transforms. r=lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D34582
2019-06-14 08:46:20 -04:00
Bogdan Tara e05c286c5f Backed out changeset 331846de4391 (bug 1551844) for ccwn2c08.html and ccwn3p08.html failures a=backout 2019-06-14 12:48:16 +03:00
Andrew Osmond 3334a54347 Bug 1551844 - Implement NEON variations of QCMS ICCv2 transforms. r=lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D34582
2019-06-13 07:55:21 -04:00
Andrew Osmond d8f7e96b8d Bug 1555329 - Fix BGRA support with ICCv4 QCMS profiles. r=miko
Differential Revision: https://phabricator.services.mozilla.com/D33004
2019-05-30 13:21:21 -04:00
Andrew Osmond dbcc53ff29 Bug 1551084 - Part 5. Allow QCMS gray transforms to expand to add alpha. r=miko
Differential Revision: https://phabricator.services.mozilla.com/D30822
2019-05-27 15:44:48 -04:00
Andrew Osmond 1871421d78 Bug 1551084 - Part 4. Add support for BGRA to QCMS. r=miko
Differential Revision: https://phabricator.services.mozilla.com/D30821
2019-05-27 15:44:42 -04:00
Andrew Osmond 811c958f2b Bug 1551084 - Part 3. Use templates to reduce code duplication in QCMS. r=miko
No functional change. This allows us to support both alpha and non-alpha
variants with the same implementation, in addition to laying the ground
work for QCMS to support BGRA as an input and output.

Differential Revision: https://phabricator.services.mozilla.com/D30820
2019-05-27 15:44:32 -04:00
Andrew Osmond e4f8bc1035 Bug 1551084 - Part 2. Make QCMS transform files use C++. r=miko
Differential Revision: https://phabricator.services.mozilla.com/D30819


--HG--
rename : gfx/qcms/transform-altivec.c => gfx/qcms/transform-altivec.cpp
rename : gfx/qcms/transform-sse1.c => gfx/qcms/transform-sse1.cpp
rename : gfx/qcms/transform-sse2.c => gfx/qcms/transform-sse2.cpp
rename : gfx/qcms/transform.c => gfx/qcms/transform.cpp
2019-05-27 15:43:59 -04:00
Andrew Osmond 244d1f67b8 Bug 1551084 - Part 1. Minor reworking of QCMS to allow C files to compile as C++. r=miko
Differential Revision: https://phabricator.services.mozilla.com/D30818
2019-05-27 15:43:59 -04:00
Narcis Beleuzu 5b11cf9cb8 Backed out 5 changesets (bug 1551084) for build bustages on transform.cpp . CLOSED TREE
Backed out changeset af04f8907fab (bug 1551084)
Backed out changeset 2a5ae3eb40ce (bug 1551084)
Backed out changeset 99874bf89419 (bug 1551084)
Backed out changeset d73949bd98e9 (bug 1551084)
Backed out changeset cd1bb23b475a (bug 1551084)

--HG--
rename : gfx/qcms/transform-altivec.cpp => gfx/qcms/transform-altivec.c
rename : gfx/qcms/transform-sse1.cpp => gfx/qcms/transform-sse1.c
rename : gfx/qcms/transform-sse2.cpp => gfx/qcms/transform-sse2.c
rename : gfx/qcms/transform.cpp => gfx/qcms/transform.c
2019-05-27 18:52:34 +03:00
Andrew Osmond 5c3360e51e Bug 1551084 - Part 5. Allow QCMS gray transforms to expand to add alpha. r=miko
Differential Revision: https://phabricator.services.mozilla.com/D30822
2019-05-27 11:16:46 -04:00
Andrew Osmond 8f51499c6d Bug 1551084 - Part 4. Add support for BGRA to QCMS. r=miko
Differential Revision: https://phabricator.services.mozilla.com/D30821
2019-05-27 11:16:46 -04:00
Andrew Osmond b5eed66d2b Bug 1551084 - Part 3. Use templates to reduce code duplication in QCMS. r=miko
No functional change. This allows us to support both alpha and non-alpha
variants with the same implementation, in addition to laying the ground
work for QCMS to support BGRA as an input and output.

Differential Revision: https://phabricator.services.mozilla.com/D30820
2019-05-27 11:16:46 -04:00
Andrew Osmond 803f797714 Bug 1551084 - Part 2. Make QCMS transform files use C++. r=miko
Differential Revision: https://phabricator.services.mozilla.com/D30819


--HG--
rename : gfx/qcms/transform-altivec.c => gfx/qcms/transform-altivec.cpp
rename : gfx/qcms/transform-sse1.c => gfx/qcms/transform-sse1.cpp
rename : gfx/qcms/transform-sse2.c => gfx/qcms/transform-sse2.cpp
rename : gfx/qcms/transform.c => gfx/qcms/transform.cpp
2019-05-27 11:16:46 -04:00
Andrew Osmond 086ae9c208 Bug 1551084 - Part 1. Minor reworking of QCMS to allow C files to compile as C++. r=miko
Differential Revision: https://phabricator.services.mozilla.com/D30818
2019-05-27 11:16:46 -04:00
Mike Hommey ef3ad686ee Bug 1512504 - Remove support for MSVC. r=froydnj
Consequently, this removes:
- MOZ_LIBPRIO, which is now always enabled.
- non_msvc_compiler, which is now always true.
- The cl.py wrapper, since it's not used anymore.
- CL_INCLUDES_PREFIX, which was only used for the cl.py wrapper.
- NONASCII, which was only there to ensure CL_INCLUDES_PREFIX still
  worked in non-ASCII cases.

This however keeps a large part of detecting and configuring for MSVC,
because we still do need it for at least headers, libraries, and midl.

Depends on D19614

Differential Revision: https://phabricator.services.mozilla.com/D19615

--HG--
extra : moz-landing-system : lando
2019-02-14 21:45:27 +00:00
Thomas P. f33c95e66c Bug 1494222: Add source bytes to fix qcms_fuzzer coverage. r=agaynor 2018-10-07 21:21:34 +00:00
Thomas P. bf5942616e Bug 1494222: add combined mAB/mBA profile to qcms_fuzzer samples. r=agaynor
--HG--
extra : histedit_source : 5e64af56ed5284b2b1e70ea94f250356b68ad193
2018-09-28 02:59:39 +00:00
Thomas P. 150e193f2f Bug 1494222: fix qcms_fuzzer coverage by enabling all path combinations. r=agaynor
--HG--
extra : histedit_source : f9144b08a11cef50c336cad1dbe8599f1c612b7b
2018-09-27 21:59:12 +00:00
Thomas P. 7d42fc9019 Bug 1494222: set XYZ PCS on internal RGB profiles. r=nical
--HG--
extra : histedit_source : b53b8c299be35db04ca199d0798daa208e447150
2018-09-26 08:38:24 +00:00
Thomas P. 7b759af801 Bug 1494222: don't check bogosity of profiles with LUT-types mAB/mBA. r=nical
--HG--
extra : histedit_source : d269029c707e6feac4a618ccba62e5cb7f35ae71
2018-09-26 08:43:33 +00:00
Thomas P. 4b1be4ef6a Bug 1484556: add Qcms fuzzer seed profiles. r=decoder 2018-08-24 04:31:37 +00:00
Thomas P. cd613a5787 Bug 1477858 - add Qcms fuzzing target dictionary. r=decoder 2018-07-23 22:34:16 +00:00
Nathan Froyd 309ddc0be2 Bug 1477048 - part 2 - remove non-ipc/chromium moz.build uses of OS_TEST; r=gps
The deletions in xptcall are when we don't even have support for the CPU
in moz.configure, so I assume that people haven't been compiling on
those architectures for quite some time.
2018-07-24 16:08:56 -04:00
Nathan Froyd 5158597854 Bug 1477048 - part 1 - remove `'86' in CONFIG['OS_TEST']` stanzas from moz.build files; r=gps
The current code is somewhat non-obvious to a first-time reader, and
OS_TEST is a bizarre thing anyway, since it's actually the name of the
CPU we're running on.  We'd do well to minimize the use of OS_TEST.

Note that the complete nuking of the xptcall/md/unix/moz.build lines are
because we don't support OS X/x86 anymore.
2018-07-24 16:08:56 -04:00
Thomas P. 5f96c00e81 Bug 1464257: fix lut8Type tag implementation. r=bas 2018-06-26 02:20:22 +00:00
Thomas P. 9e3d57b831 Bug 1459425: add fuzzing target for qcms. r=bas sr=decoder
hybrid target that works with both the native interface and oss-fuzz
2018-06-26 02:40:45 +00:00
Nicolas Silva 5070dbcceb Bug 1444734 - Bail out of read_nested_curveType when encountering an invalid source. r=Bas 2018-06-20 10:37:22 +02:00
Nicolas Silva 7b8229b86b Bug 1464039 - Only reject qcms transform with invalid grid size if the transform function uses the grid size. r=Bas 2018-06-19 15:32:29 +02:00
Nicolas Silva fdf1d9bbb2 Bug 1464039 - Reject some invalid transforms in qcms. r=mwoodrow 2018-06-15 14:01:07 -07:00
Nicolas Silva b2c558ac48 Bug 1463424 - Fix divide by zeroes in qcms. r=Bas 2018-05-28 11:34:03 +02:00
Ryan VanderMeulen cc37a66c1c Backed out changeset 94b228e67f4c (bug 1432067) because it causes valid profiles to be rejected. 2018-05-16 19:29:59 -04:00
Milan Sreckovic b1115c2c28 Bug 1432067 - Ignore zero sized tables. r=jrmuizel 2018-05-07 16:33:33 -04:00
Lee Salzman a843f0909e Bug 1431637 - free qcms_transform r_clut. r=jrmuizel
MozReview-Commit-ID: DwbIhtuGvcA
2018-02-08 21:41:03 -05:00
Sylvestre Ledru 5de63ef061 Bug 1394734 - Replace CONFIG['MSVC'] by CONFIG['CC_TYPE'] r=glandium
MozReview-Commit-ID: 5orfnoude7h

--HG--
extra : rebase_source : 1ed9a6b56e1d27221a07624767a7fb0e6147117f
2017-12-08 13:46:13 +01:00
Sylvestre Ledru 9bfe27d903 Bug 1394734 - Replace CONFIG['GNU_C*'] by CONFIG['CC_TYPE'] r=glandium
MozReview-Commit-ID: 7duJk2gSd4m

--HG--
extra : rebase_source : 7312fe276e561e8c034a5f6749774ae812727f9c
2017-12-07 22:09:15 +01:00
Jeff Muizelaar d057c6f505 Bug 1250461. Don't reject profiles with negative colorant tristiumlus value on macOS. r=mstange
This is basically just this: https://bugs.chromium.org/p/chromium/issues/detail?id=562951
The original profile that caused us to add this check has bigger problems than negative
colorant tristiumlus values. We should reject it using a better metric. In the mean time
let's not reject these things on macOS.
2017-10-12 11:46:08 -04:00
John Paul Adrian Glaubitz c6b39f0f90 Bug 972945 - Add autoconf test to enable AltiVec on supported targets only. r=glandium
Currently, the build scripts enable AltiVec unconditionally on all ppc*
targets. However, there some ppc* targets which do not support AltiVec
instruction set extensions, these are often embedded systems like the
PowerPC e500 or similar which have their own type of instruction set
extensions like SPE. Trying to enable Altivec support on these targets
results in a compiler error, hence we need to add an autoconf test for
AltiVec support before trying to enable it on ppc* targets.

Signed-off-by: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>

--HG--
extra : rebase_source : 6c4df813d97d95046fd2269c876313ce7591c5cf
2016-08-16 05:17:00 -04:00
Miko Mynttinen 9ea7cd8eb6 Bug 1291490 - File gfx/qcms/transform_util.h is missing a header. r=bgirard
Include the missing math.h header.

MozReview-Commit-ID: BozHU59BGkF

--HG--
extra : transplant_source : %02%95%3F-k%FF%BA_%C7%1CU%CBU%29c%D7%82%9F%04J
2016-08-02 15:41:56 -07:00
Tom Tromey 5538d692d3 Bug 1286877 - do not set c-basic-offset for python-mode; r=gps
This removes the unnecessary setting of c-basic-offset from all
python-mode files.

This was automatically generated using

    perl -pi -e 's/; *c-basic-offset: *[0-9]+//'

... on the affected files.

The bulk of these files are moz.build files but there a few others as
well.

MozReview-Commit-ID: 2pPf3DEiZqx

--HG--
extra : rebase_source : 0a7dcac80b924174a2c429b093791148ea6ac204
2016-07-14 10:16:42 -06:00
Mike Hommey d464f29e5f Bug 1255813 - Remove build system support for Solaris, HPUX and AIX. r=ted 2016-03-15 07:34:50 +09:00
Nicholas Nethercote af6751ef10 Bug 1205533 - Fix and disallow warnings in gfx/qcms/. r=jrmuizel.
This patch fixes various warnings from MSVC.

- Several "truncation from 'double' to 'float'" warnings, easily fixed by
  appending 'f' to literals.

- Some "signed/unsigned mismatch" warnings. In read_tag_lutType(), MSVC is
  apparently promoting the multiplication of a uint8_t and a uint16_t to an
  int32_t, oddly enough. A uint32_t cast fixes the warning.

- |offset| was unused in qcms_data_create_rbg_with_gamma().

- A couple of "overflow in floating-point constant arithmetic" warnings
  involving INFINITY in transform_util.c. There is some type confusion here --
  in C99 HUGE_VAL is a double and INFINITY is a float. So the HUGE_VAL here
  should actualy be HUGE_VALF. But, strangely enough, that isn't enough to
  avoid the warning, I don't know why. However, it turns out that any
  non-positive value for |interval| will have the same effect, so I just
  removed all the INFINITY/HUGE_VAL stuff and used -1 instead.

It also fixes an ARM-only GCC warning.

- "'__force_align_arg_pointer__' attribute directive ignored". This is an
  x86-only attribute. Instead of disabling it on x86-64, instead enable it on
  i386 (which avoids enabling it uselessly on ARM).

--HG--
extra : rebase_source : 61015b7e48aebd58035fc222abf076e79a99a972
2015-09-17 17:11:27 -07:00
Nicholas Nethercote f44287005f Bug 1198334 (part 1) - Replace the opt-in FAIL_ON_WARNINGS with the opt-out ALLOW_COMPILER_WARNINGS. r=glandium.
The patch removes 455 occurrences of FAIL_ON_WARNINGS from moz.build files, and
adds 78 instances of ALLOW_COMPILER_WARNINGS. About half of those 78 are in
code we control and which should be removable with a little effort.

--HG--
extra : rebase_source : 82e3387abfbd5f1471e953961d301d3d97ed2973
2015-08-27 20:44:53 -07:00
Benoit Girard 58bb8fc72f Bug 1166252 - Reject lut8/16Type with empty CLUT grid. r=jrmuizel
--HG--
extra : commitid : KiU2IKstYSk
2015-08-25 15:48:55 -04:00
Benoit Girard 509337a1a0 Bug 1132467 - Adjust qcms lut inverse binary search of non monotonic TRC. r=jrmuizel
--HG--
extra : commitid : KdtckZDOAZH
2015-06-04 19:30:52 -04:00
Benoit Girard 9b363da3c3 Bug 1176551 - Don't reject valid profiles with no CLUT offset. r=jrmuizel
--HG--
extra : commitid : FPpGSvD0Xkd
2015-06-23 17:49:39 -07:00
David Major 0af0779f16 Bug 1168480 - Fix potential leaks in qcms_transform_create. r=seth
--HG--
extra : rebase_source : bd4adeca9376895e0b768212934325382c7c4a0f
2015-05-26 22:18:55 -04:00
Seth Fowler ce0ede7268 Bug 1163740 - Paper over qcms crashes due to NaN values in qcms_transform::matrix. r=dmajor
--HG--
extra : rebase_source : 66b5c8fbf58a6a5d8bdf60cbb96dde522a83fdeb
2015-05-26 17:34:21 -07:00
David Major 83bfbdcc05 Backed out changeset 4914871dbd96 (bug 1163740) now that the diagnostic patch has served its purpose
--HG--
extra : rebase_source : 987712aa0aa3a053536566b5c1edb729b3dba2d4
2015-05-26 13:07:26 -04:00