This function will return the start of the allocation, if given a pointer that lies within an allocation. Otherwise, it returns NULL.
It will be useful for detecting dynamic TLS allocations in glibc >=2.25, which
uses malloc (see https://github.com/google/sanitizers/issues/1409#issuecomment-1214244142).
This is public interface, if we don't have to, we should avoid exposing it here.
Do we have a reason to do so?
sanitizer_common/sanitizer_interface_internal.h probably more appropriate?