It looks like LLVM has a command-line flag for generating soft-float calls, have you tried `rustc --llvm-args '-soft-float'` to see if LLVM is actually picking it up from the command line?