coreboot-kgpe-d16/payloads/libpayload/include
Julius Werner 96b00a50f1 libpayload: Add simple 32.32 fixed-point math API
struct fraction is slooooooooooow. This patch adds a simple 64-bit
(32-bits integral, 32-bits fractional) fixed-point math API that is
*much* faster (observed roughly 5x speed-up) when doing intensive
graphics operations. It is optimized for speed over accuracy so some
operations may lose a bit more precision than expected, but overall it's
still plenty of bits for most use cases.

Also includes support for basic trigonometric functions with a small
lookup table.

Signed-off-by: Julius Werner <jwerner@chromium.org>
Change-Id: Id0f9c23980e36ce0ac0b7c5cd0bc66153bca1fd0
Reviewed-on: https://review.coreboot.org/c/coreboot/+/42993
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
2020-07-09 00:32:11 +00:00
..
arm/arch treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
arm64/arch treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
arpa treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
pci treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
storage treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
sys treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
udc treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
usb libpayload: drivers/usb: add a USB pre-poll hook 2020-06-06 01:49:52 +00:00
x86/arch treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
archive.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
assert.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
cbfs.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
cbfs_core.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
cbfs_ram.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
cbgfx.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
compiler.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
coreboot_tables.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
ctype.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
die.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
endian.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
errno.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
exception.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
fmap_serialized.h fmap: Add FMAP_AREA_PRESERVE 2019-03-04 13:25:01 +00:00
fpmath.h libpayload: Add simple 32.32 fixed-point math API 2020-07-09 00:32:11 +00:00
gdb.h libpayload: gdb: Factor out gdb_handle_reentrant_exception() from arm32 2018-10-12 20:17:40 +00:00
getopt.h
inttypes.h
ipchksum.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
kconfig.h Add new CONFIG(XXX) macro to replace IS_ENABLED(CONFIG_XXX) 2019-03-07 17:06:28 +00:00
keycodes.h
libpayload.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
limits.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
lz4.h
lzma.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
malloc.h
multiboot_tables.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
panel.h
pci.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
queue.h payloads: Remove/fix trailing whitespace 2018-09-04 12:38:40 +00:00
stdarg.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
stddef.h libpayload/libc/time: Add an arch_ndelay() 2018-09-12 14:15:18 +00:00
stdint.h libpayload: Fix definitions of minimum integer values 2020-05-18 07:34:55 +00:00
stdio.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
stdlib.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
string.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
strings.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
sysinfo.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
term.h
time.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
unistd.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
video_console.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00