I'v tried it, but llvm args has no support for it.
rustc -Cllvm-args="..." with: Unknown command line argument '-mbranch-protection=bti'. Try: 'rustc -Cllvm-args="..." with --help'
rustc -Cllvm-args="..." with: Did you mean '--tail-predication=bti'?
rustc -Cllvm-args="--help-list" shows its supporting list. and I could not found branch-protection.
Unfortunately, tail-predication does not accept bti.
rustc -Cllvm-args="..." with: for the --tail-predication option: Cannot find option named 'bti'!
--tail-predication= - MVE tail-predication pass options
=disabled - Don't tail-predicate loops
=enabled-no-reductions - Enable tail-predication, but not for reduction loops
=enabled - Enable tail-predication, including reduction loops
=force-enabled-no-reductions - Enable tail-predication, but not for reduction loops, and force this which might be unsafe
=force-enabled - Enable tail-predication, including reduction loops, and force this which might be unsafe