summaryrefslogtreecommitdiff
path: root/lib/igt_halffloat.c
AgeCommit message (Collapse)Author
2019-04-24lib/igt_halffloat: fix compilation with ClangSimon Ser
The source file contains a special code-path for Clang, however this path fails to compile: ../lib/igt_halffloat.c:227:7: error: conflicting types for 'igt_half_to_float' float igt_half_to_float(const uint16_t *h, float *f, unsigned int num) ^ ../lib/igt_halffloat.h:26:6: note: previous declaration is here void igt_half_to_float(const uint16_t *h, float *f, unsigned int num); ^ 1 error generated. This commit fixes this mismatch. Signed-off-by: Simon Ser <simon.ser@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2019-04-18lib: Add halffloat implementationKevin Strasser
Probe for and make an API available for tests to use f16c intrinsics to generate needed fp16 pixel data. Also import a pure c fp32 <-> fp16 conversion implementation from Mesa 18.3.4, which will act as a fallback when f16c is unavailable. rfc2: - Change API to reduce number of function calls (Maarten) v1: - Move pragma so AVX code isn't emitted for fallbacks (Ville) - Change edx to ecx (Ville) Signed-off-by: Kevin Strasser <kevin.strasser@intel.com> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>