coreboot-kgpe-d16/payloads/libpayload/libc
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
..
Makefile.inc libpayload: Add simple 32.32 fixed-point math API 2020-07-09 00:32:11 +00:00
args.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
console.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
coreboot.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
ctype.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
die.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
exec.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
fmap.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
fpmath.c libpayload: Add simple 32.32 fixed-point math API 2020-07-09 00:32:11 +00:00
getopt_long.c
hexdump.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
ipchecksum.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
lib.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
libgcc.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
malloc.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
memory.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
printf.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
qsort.c
rand.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
readline.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
string.c payloads/libpayload/libc: Avoid NULL pointer dereference 2020-05-28 09:34:37 +00:00
strlcpy.c
sysinfo.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
time.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00