sdesmalen-arm wrote: Yes that's right, this will only affect `__arm_streaming` functions. The added MIR pass added is rather elementary, and the reason the change is 'big' is because a lot of tests are affected when changing the target interface to enable 'subreg liveness tracking', which either subtly changes the register allocation or removes a lot of `kill: $<reg>` lines in the asm output (because it now tracks liveness of sub-registers of register tuples, and no longer the entire tuple register as a whole). Not sure if it helps, but the feature would also be pretty easy to disable as it merely requires changing the default value of the `cl::opt` in AArch64Subtarget.cpp. Because streaming functions are not very common, I've tested this with the feature also enabled for non-streaming functions on a variety of workloads to get wider coverage.
https://github.com/llvm/llvm-project/pull/176197 _______________________________________________ llvm-branch-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
