Adds support to detect at init time whether the clone3 syscall is supported by the system or not. Use this to fail early if a clone3 syscall is made and avoid doing the pre-syscall work.
Adds a test that attempts the same clone3 syscall as the os.c code and checks that it returns EINVAL on systems that support clone3 and ENOSYS on systems that don't.
Manually verified on a system with Linux kernel 4.15 (that does not have the clone3 syscall) that DR's pre-syscall handling of clone3 indeed returns early with this fix.
Fixes the size of the result var for the syscall in the test, which should be 64-bit on 64-bit systems.
Issue: #5131 (closed), #5221