Commit Graph

412 Commits

Author SHA1 Message Date
Mike Hommey
df505eb620 Bug 1897029 - Add rustc-check-cfg to qcms for rustc 1.80. r=gfx-reviewers,jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D210590
2024-05-16 01:58:17 +00:00
Jeff Muizelaar
1e008e0df3 Bug 1884381 - Use a single allocation for precache_output. r=gfx-reviewers,gw
We always want to either have all of these or none of these so
just put them all together. This will also make it easier for us to
store the output matrix along side.

Differential Revision: https://phabricator.services.mozilla.com/D204070
2024-03-11 13:36:59 +00:00
Jeff Muizelaar
446cd9fd80 Bug 1884279 - compute_precache always returns true so drop the return value. r=gfx-reviewers,nical
Differential Revision: https://phabricator.services.mozilla.com/D203986
2024-03-08 14:34:47 +00:00
Jeff Muizelaar
73676e66aa Bug 1882291. Switch to stdarch_arm_neon_intrinsics feature on rust >=1.78. r=glandium
We only need this on ARM32 because the ARM64 intrinsics are stable.

stdarch_arm_neon_intrinsics was split out from stdsimd here:
https://github.com/rust-lang/stdarch/pull/1486

Differential Revision: https://phabricator.services.mozilla.com/D203039
2024-03-05 03:12:28 +00:00
Jeff Muizelaar
ae3439337b Bug 1881879 - Remove unneeded manual dereferences. r=gfx-reviewers,lsalzman
These are left over from the conversion from C.

Differential Revision: https://phabricator.services.mozilla.com/D202643
2024-02-24 03:14:40 +00:00
Mike Hommey
20841fb57b Bug 1878782 - Remove useless static mut globals. r=gfx-reviewers,jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D200731
2024-02-06 03:51:54 +00:00
Jeff Muizelaar
d1db802756 Bug 1873525 - qcms: Add back COPYING, add CONTRIBUTING.md and bump the version. r=gfx-reviewers,aosmond,supply-chain-reviewers
This also switches qcms to use a wildcard-audit because it's maintained
in m-c

Differential Revision: https://phabricator.services.mozilla.com/D197955
2024-01-09 04:04:09 +00:00
Jeff Muizelaar
07f86db694 Bug 1871185 - Add support for creating a displayP3 profile. r=aosmond
It's the same sRGB except it has different primaries.

Differential Revision: https://phabricator.services.mozilla.com/D197013
2023-12-21 15:00:54 +00:00
Mike Hommey
b580e3f774 Bug 1871181 - Remove unused imports from transform_avx.rs. r=gfx-reviewers,jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D197014
2023-12-21 03:01:02 +00:00
Mike Hommey
80eebdef4c Bug 1841921 - Fix "variable does not need to be mutable" warnings in qcms. r=gfx-reviewers,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D182852
2023-07-06 02:32:58 +00:00
Kelsey Gilbert
3bd71468e2 Bug 1799258 - [qcms] Add query for profile data and lut tables. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D163663
2023-03-13 21:04:09 +00:00
Stanca Serban
aaea911dc4 Backed out 9 changesets (bug 1799258) for causing multiple failures. CLOSED TREE
Backed out changeset 40351b5987a5 (bug 1799258)
Backed out changeset 87f3532bfbcd (bug 1799258)
Backed out changeset 9c1d9405e8bf (bug 1799258)
Backed out changeset 60a0351d9092 (bug 1799258)
Backed out changeset 5f911de66ec0 (bug 1799258)
Backed out changeset 294a00d1c7b7 (bug 1799258)
Backed out changeset 228200dcaf93 (bug 1799258)
Backed out changeset b25110652394 (bug 1799258)
Backed out changeset 3c3c7366cc40 (bug 1799258)
2023-02-15 12:18:44 +02:00
Kelsey Gilbert
8a7e329c9a Bug 1799258 - [qcms] Add query for profile data and lut tables. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D163663
2023-02-15 08:29:41 +00:00
Norisz Fay
ed1015daf1 Backed out 9 changesets (bug 1799258) for causing build bustages CLOSED TREE
Backed out changeset a48db1421c6d (bug 1799258)
Backed out changeset 7707637480e7 (bug 1799258)
Backed out changeset 0141b29bf5df (bug 1799258)
Backed out changeset cd9af26bb314 (bug 1799258)
Backed out changeset 4e68a54c6410 (bug 1799258)
Backed out changeset 52afd24d2338 (bug 1799258)
Backed out changeset b4b4977857c7 (bug 1799258)
Backed out changeset 2c23929f52f2 (bug 1799258)
Backed out changeset 83744e1e372b (bug 1799258)
2023-02-07 00:36:41 +02:00
Kelsey Gilbert
c5cc9f1f33 Bug 1799258 - [qcms] Add query for profile data and lut tables. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D163663
2023-02-06 19:58:53 +00:00
Csoregi Natalia
f822f99642 Backed out 6 changesets (bug 1799258) for failures on gfx.color_management.display_profile. CLOSED TREE
Backed out changeset 22351f36b74b (bug 1799258)
Backed out changeset 9bbbe3ed2794 (bug 1799258)
Backed out changeset e05c809f58d0 (bug 1799258)
Backed out changeset 791eeb52f034 (bug 1799258)
Backed out changeset 353ef4721bba (bug 1799258)
Backed out changeset b5157d950aa7 (bug 1799258)
2023-01-24 02:08:51 +02:00
Kelsey Gilbert
4d0c2f5f61 Bug 1799258 - [qcms] Add query for profile data and lut tables. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D163663
2023-01-23 22:13:16 +00:00
Jeff Muizelaar
d8212052f2 Bug 1809154. Silently fail to read convert unsupported transfer functions instead of crashing. r=gfx-reviewers,jnicol
This isn't great but I'm pretty sure it's better than crashing.

Differential Revision: https://phabricator.services.mozilla.com/D166338
2023-01-09 19:08:12 +00:00
Marian-Vasile Laza
74bda87ddf Backed out 3 changesets (bug 1799258) for causing GTest-1proc failures on Span. CLOSED TREE
Backed out changeset 0facab7b9a1d (bug 1799258)
Backed out changeset 4f9ee3537468 (bug 1799258)
Backed out changeset 12e98a3054d0 (bug 1799258)
2022-12-21 01:41:43 +02:00
Kelsey Gilbert
0dd2e222e9 Bug 1799258 - [qcms] Add query for profile data and lut tables. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D163663
2022-12-20 22:47:52 +00:00
Jeff Muizelaar
fc041b8b9e Bug 1799391. Allow negative XYZ on non-macOS. r=aosmond
It seems like Chrome allows this and it's relatively common.
We don't have a good reason to continue blocking these profiles.

Differential Revision: https://phabricator.services.mozilla.com/D162024
2022-11-15 03:49:04 +00:00
Jeff Muizelaar
2091af5f6b Bug 1795045 - qcms: Add support for only reading the curves from profiles. r=aosmond
We use this when reading the output profiles to avoid the
performance cost of doing the color transformation using LUTs
when the output profile has them.

This will let us enable ICCv4 everywhere.

Differential Revision: https://phabricator.services.mozilla.com/D159273
2022-10-14 19:16:54 +00:00
Mike Hommey
7e2794ca9d Bug 1783985 - Remove compat with rustc < 1.61 from qcms. r=gfx-reviewers,jgilbert,jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D154342
2022-08-16 00:56:24 +00:00
Mike Hommey
7ce663eb08 Bug 1772048 - Update rustc_version and semver crates. r=emilio,webdriver-reviewers,kinetik,whimboo
semver 1.0 doesn't and won't support Clone on semver::Error[1], so we
convert the mozversion error type to store the string version of the
error, which is an incompatible change requiring a version bump on the
crate.

1. https://github.com/dtolnay/semver/pull/280

Differential Revision: https://phabricator.services.mozilla.com/D147825
2022-06-07 10:01:32 +00:00
Mike Hommey
7b58e2b833 Bug 1771827 - Don't enable the aarch64_target_feature feature on rustc 1.61.0. r=gfx-reviewers,jrmuizel
because it's stable as of that version.

Differential Revision: https://phabricator.services.mozilla.com/D147706
2022-05-31 00:50:09 +00:00
Mike Hommey
f7b39f73c2 Bug 1758021 - Get is_{arm,aarch64}_feature_detected from std::arch on rustc >= 1.60. r=gfx-reviewers,jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D140278
2022-03-04 00:39:40 +00:00
Jon Bauman
619acc91bb Bug 1729539 - Hit MOZ_CRASH(assertion failed: y2 > 1. / 12. && y2 <= 1.) at gfx/qcms/src/iccread.rs:1392. r=jrmuizel
The assertion is due to an inappropriate test of exact floating-point values.
build_trc_table() handles this saturating case, so there's no need to assert.
Add more test coverage to be certain no fuzzing inputs will lead to crashes.

Differential Revision: https://phabricator.services.mozilla.com/D125006
2021-09-17 17:41:26 +00:00
Butkovits Atila
f2a5d438bb Backed out changeset d629f462a605 (bug 1729539) for causing Wd failures. CLOSED TREE 2021-09-16 02:50:35 +03:00
Jon Bauman
6d6715ba10 Bug 1729539 - Hit MOZ_CRASH(assertion failed: y2 > 1. / 12. && y2 <= 1.) at gfx/qcms/src/iccread.rs:1392. r=jrmuizel
The assertion is due to an inappropriate test of exact floating-point values.
build_trc_table() handles this saturating case, so there's no need to assert.
Add more test coverage to be certain no fuzzing inputs will lead to crashes.

Differential Revision: https://phabricator.services.mozilla.com/D125006
2021-09-15 19:57:15 +00:00
Marian-Vasile Laza
699488300d Backed out changeset bd23fb0c95cc (bug 1729539) for causing web platform failures. 2021-09-15 08:41:00 +03:00
Jon Bauman
f5e56d8781 Bug 1729539 - Hit MOZ_CRASH(assertion failed: y2 > 1. / 12. && y2 <= 1.) at gfx/qcms/src/iccread.rs:1392. r=jrmuizel
The assertion is due to an inappropriate test of exact floating-point values.
build_trc_table() handles this saturating case, so there's no need to assert.
Add more test coverage to be certain no fuzzing inputs will lead to crashes.

Differential Revision: https://phabricator.services.mozilla.com/D125006
2021-09-14 23:14:41 +00:00
Cristian Tuns
3a65ad3358 Backed out changeset db3338456ae1 (bug 1729539) for causing multiple failures. CLOSED TREE 2021-09-14 15:02:43 -04:00
Jon Bauman
cf0312ede2 Bug 1729539 - Hit MOZ_CRASH(assertion failed: y2 > 1. / 12. && y2 <= 1.) at gfx/qcms/src/iccread.rs:1392. r=jrmuizel
The assertion is due to an inappropriate test of exact floating-point values.
build_trc_table() handles this saturating case, so there's no need to assert.
Add more test coverage to be certain no fuzzing inputs will lead to crashes.

Differential Revision: https://phabricator.services.mozilla.com/D125006
2021-09-14 16:32:37 +00:00
Jon Bauman
6155249a72 Bug 1696045 - Add AVIF telemetry for unimplemented features and performance. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D123378
2021-08-24 22:34:32 +00:00
Sandor Molnar
bb9a848857 Backed out changeset d0f659f7ea9b (bug 1696045) for causing gtest failures in image/decoders/nsAVIFDecoder. CLOSED TREE 2021-08-24 21:27:20 +03:00
Jon Bauman
fc5f21743a Bug 1696045 - Add AVIF telemetry for unimplemented features and performance. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D123378
2021-08-24 17:20:02 +00:00
Jeff Muizelaar
1916934834 Bug 1725742. Validate tag offsets upfront to avoid weird overflow situations later on. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D122856
2021-08-19 16:33:03 +00:00
Jon Bauman
bacfba2091 Bug 1725056 - qcms: avoid undefined behavior when handling CICP values. r=jrmuizel,tsmith
Differential Revision: https://phabricator.services.mozilla.com/D122318
2021-08-16 23:13:36 +00:00
Jon Bauman
1fbcf87b11 Bug 1634741 - AVIF (AV1 Image File Format): proper color space support. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D121764
2021-08-05 15:47:59 +00:00
Jon Bauman
ad9d5759ea Bug 1723253 - qcms: Add CICP (Coding-independent code points) support. r=jrmuizel
Add CICP-specific functionality

Differential Revision: https://phabricator.services.mozilla.com/D121452
2021-08-05 05:10:37 +00:00
Jon Bauman
bbd6119d94 Bug 1723253 - qcms: Clippy/costmetic changes. r=jrmuizel
Clippy/costmetic changes

Differential Revision: https://phabricator.services.mozilla.com/D121458
2021-08-05 05:10:37 +00:00
Jeff Muizelaar
ee0926e1db Bug 1721596 - qcms: Rerun rustfmt. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D120466
2021-07-21 13:03:23 +00:00
Jeff Muizelaar
132a09618b Bug 1721515 - qcms: Remove some now unneeded unstable features. r=aosmond
These were used by our local NEON intrinsics implementation.
We don't need them anymore.

Differential Revision: https://phabricator.services.mozilla.com/D120420
2021-07-21 01:42:38 +00:00
Jeff Muizelaar
6edd219c43 Bug 1721484 - qcms: Fix extra space. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D120395
2021-07-20 21:36:45 +00:00
Jeff Muizelaar
ad5985aca6 Bug 1721483 - qcms: Remove unneeded vim modelines. r=aosmond
These were inherited from the C code and are wrong and unneeded in
Rust.

Differential Revision: https://phabricator.services.mozilla.com/D120394
2021-07-20 21:36:18 +00:00
Jeff Muizelaar
2ed71226c3 Bug 1697818 - Drop handrolled NEON SIMD wrappers. r=aosmond
We require Rust 1.50 now which is new enough to not need these
wrappers anymore.

Differential Revision: https://phabricator.services.mozilla.com/D108337
2021-07-20 21:29:01 +00:00
Jeff Muizelaar
62908eaa10 Bug 1713012. Only set RUSTC_BOOTSTRAP if it's not already set. r=aosmond
In bug 1670538 we started setting RUSTC_BOOTSTRAP for Rust 1.50+
Rust 1.50+ gives a warning if we set in build.rs so don't.

Differential Revision: https://phabricator.services.mozilla.com/D116131
2021-05-28 20:18:23 +00:00
Jeff Muizelaar
54a52e060a Bug 1710897 - Handle matrix inversion failing more gracefully. r=aosmond
Prior to making invert() return an Option we just gleefully
assumed that it succeeded here. Instead of panicing let's
fail to create the transform.

The problem was found by oss-fuzz:
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=34216

Differential Revision: https://phabricator.services.mozilla.com/D114999
2021-05-12 20:52:53 +00:00
Jeff Muizelaar
c92ee2a045 Bug 1710542 - Remove 'invalid' field from Matrix. r=aosmond
This changes to using Option<Matrix> instead of
having an 'invalid' field. This makes sure we check
when we need to and don't have to check otherwise.

Differential Revision: https://phabricator.services.mozilla.com/D114808
2021-05-11 13:58:20 +00:00
Jeff Muizelaar
9b9ddc9cc2 Bug 1710450 - Pass a reference to read_tag_s15Fixed16ArrayType r=aosmond
This lets us avoid having to look up the tag again.

Differential Revision: https://phabricator.services.mozilla.com/D114751
2021-05-11 13:57:43 +00:00