diff --git a/src/librustc_trans/back/write.rs b/src/librustc_trans/back/write.rs index 5e48ce384be51..68e1be65ee8b2 100644 --- a/src/librustc_trans/back/write.rs +++ b/src/librustc_trans/back/write.rs @@ -1012,6 +1012,9 @@ unsafe fn configure_llvm(sess: &Session) { if sess.time_llvm_passes() { add("-time-passes"); } if sess.print_llvm_passes() { add("-debug-pass=Structure"); } + // FIXME #21627 disable faulty FastISel on AArch64 (even for -O0) + if sess.target.target.arch.as_slice() == "aarch64" { add("-fast-isel=0"); } + for arg in sess.opts.cg.llvm_args.iter() { add(&(*arg)[]); }