This patch adds a builtin that returns a non deterministic value of the same type as the argument.
Example:
int x = __builtin_nondeterministic_value(x);
Which is then lowered to freeze(poison).
This is a continuation of the work done in https://reviews.llvm.org/D136737, following the provided feedback.
Add some examples for 'bool' and vector-bool as well to make sure this is doing what you want.