https://gcc.gnu.org/bugzilla/show_bug.cgi?id=125838
--- Comment #1 from Drea Pinski <pinskia at gcc dot gnu.org> --- >(I do not remember how to disable IPO on clang). clang does not have any attribute yet (the underlying LLVM attribute is not there either yet, https://github.com/llvm/llvm-project/pull/203304 adds it but it is under discussion still); you can disable inlining in a similar way as GCC (via noinline attribute or -fno-inlining). It was noted that the ABI of preserve_none is consider unstable in clang so maybe there is no right answer. from https://clang.llvm.org/docs/AttributeReference.html#preserve-none : This attribute doesn’t impact floating-point registers. preserve_none’s ABI is still unstable, and may be changed in the future.
