working on changing to use Rust's new asm! syntax since llvm_asm! is being deprecated...