Fix for issue #648.

Uses the llvmInternal member and the intrinsic name to identify an intrinsic.
Implements llvm.bswap, llvm.ctlz and llvm.cttz intrinsics as builtins and remove the core.bitop counterparts.