10 Commits

Author SHA1 Message Date
ql 17c0115f3c ASTC-encoder update to 4.7.0
Signed-off-by: zhaonan287 <zhaonan34@huawei.com>
2024-05-16 10:11:13 +08:00
pete 84f7578a44 Convert more casts to C++-style 2022-04-28 10:53:40 +01:00
pete 7ee63b47f1 Avoid left shift of negative value in soft-fp16 2021-09-16 23:14:52 +01:00
Peter Harris 1f7447e1db Disable softfloat in NEON builds 2021-06-29 14:51:49 +01:00
pete abd8955115 Use initializer not assignment 2021-06-14 15:36:46 +01:00
pete 1b79149024 Remove softfloat if hardware fp16 available 2021-04-12 23:40:49 +01:00
pete 155d18a450 Make some TU-local functions static 2021-02-27 21:17:45 +00:00
Pete Harris 6fc0531e78 Implement vec4 support for float16 conversions (#214)
This PR implements the ability to convert floats stored in vfloat4 vectors to fp16 bit patterns stored in vint4 vectors. Scalar versions are also provided as overloaded functions of the same name, for sake of convenience.

The code has been refactored to take advantage of the vectorization opportunities this gives, in particular using NEON (Arm) and F16C (x86-64) ISA support for float<>fp16 conversion. The F16C support is tied to the AVX2 enable config option, it is not a separate enable. In cases where the soft-float code is not needed, code size reduces by ~5KB.
2021-02-16 23:29:56 +00:00
pete 7f857f16ab Update some copyright years 2021-02-12 21:11:14 +00:00
Pete Harris 2b8fd08fc7 First phase of the front-end to codec API split (#125)
This phase introduces the first phase of the API split between the API front-end and the CODEC backed. However, some aspects of the final design are not yet supported:

This build only only supports automatic multi-threading; no user owned thread pools are supported.

Some memory allocations still tied to the compression pass, not the context, so reusing the context will have higher than planned CPU overhead due to the repeated memory allocation (although the impact is probably small unless compression small image).

The input image layout is still the legacy format and must be pre-padded by the caller for any pass using the area-based perceptual metrics.
2020-07-02 21:17:21 +01:00