[clang] [llvm] [ARM] Save floating point registers and status registers with save_fp function attribute (PR #89654)

Eli Friedman via cfe-commits cfe-commits at lists.llvm.org
Mon May 6 12:25:28 PDT 2024


================
@@ -2239,6 +2239,20 @@ The semantics are as follows:
   }];
 }
 
+def ARMInterruptSaveFPDocs : Documentation {
+    let Category = DocCatFunction;
+  let Heading = "interrupt_save_fp (ARM)";
+  let Content = [{
+Clang supports the GNU style ``__attribute__((interrupt_save_fp("TYPE")))``
+on ARM targets. This attribute behaves the same way as the ARM interrupt
+attribute, except the general purpose floating point registers are also saved. 
+If the FPEXC or FPSCR are needed, that state must be saved manually. Note, even 
----------------
efriedma-quic wrote:

This says FPSCR isn't saved... but some of the tests show FPSCR getting saved.  Which is right?

https://github.com/llvm/llvm-project/pull/89654


More information about the cfe-commits mailing list