FreeBSD: fix the build with Clang 11
- Cast void * to uintptr_t before casting to boolean_t.
- Avoid clashing definition of asm when not on Linux to prevent duplicate volatile__. This was already done in some places but not all.
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Matt Macy <mmacy@FreeBSD.org>
Signed-off-by: Ryan Moeller <freqlabs@FreeBSD.org>
Closes #10723