forked from OSchip/llvm-project
![]() Summary: This wasn't noticed: `RoundUpTo` doesn't produce a constant expression, so the sizes were not constant either. Enforce them to be static const, replace `RoundUpTo` by its expression. The compiler can now optimize the associated computations accordingly. Also looking at the produced assembly, `PageSize` was fetched multiple times during `Allocate`, so keep a local value of it. As a result it's fetched once and kept in a register. Reviewers: alekseyshl, flowerhack Reviewed By: alekseyshl Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D40862 llvm-svn: 319903 |
||
---|---|---|
.. | ||
CMakeLists.txt | ||
scudo_allocator.cpp | ||
scudo_allocator.h | ||
scudo_allocator_combined.h | ||
scudo_allocator_secondary.h | ||
scudo_crc32.cpp | ||
scudo_crc32.h | ||
scudo_flags.cpp | ||
scudo_flags.h | ||
scudo_flags.inc | ||
scudo_interceptors.cpp | ||
scudo_new_delete.cpp | ||
scudo_platform.h | ||
scudo_termination.cpp | ||
scudo_tsd.h | ||
scudo_tsd_exclusive.cpp | ||
scudo_tsd_exclusive.inc | ||
scudo_tsd_shared.cpp | ||
scudo_tsd_shared.inc | ||
scudo_utils.cpp | ||
scudo_utils.h |