std::async default launch policy

Hello,

With std::async, if both the std::launch::async and std::launch::deferred flags are set in policy, what exactly does trunk libc++ do? Does it for example check the current load of the system and the number of CPUs to decide at runtime whether to run in a separate thread or whether to lazily defer?

If you could point out the relevant section of code under https://llvm.org/svn/llvm-project/libcxx/trunk/ I’d appreciate it.

Thanks for your time,
John