tree-object-size: Make unknown a computation
Compute the unknown size value as a function of the min/max bit of
object_size_type. This transforms into a neat little branchless
sequence on x86_64:
movl %edi, %eax
sarl %eax
xorl $1, %eax
negl %eax
cltq
which should be faster than loading the value from memory. A quick
unscientific test using
`time make check-gcc RUNTESTFLAGS="dg.exp=builtin*"`
shaves about half a second off execution time with this. Also simplify
implementation of unknown_object_size.
gcc/ChangeLog:
* tree-object-size.c (unknown): Make into a function. Adjust
all uses.
(unknown_object_size): Simplify implementation.
Signed-off-by: Siddhesh Poyarekar <siddhesh@gotplt.org>