[llvm] IR: Introduce "float-abi" module flag (PR #210821)
Antonio Frighetto via llvm-commits
llvm-commits at lists.llvm.org
Wed Jul 29 08:58:07 PDT 2026
================
@@ -9407,6 +9407,37 @@ enum is the smallest type which can represent all of its values:
!1 = !{i32 1, !"short_enum", i32 0}
```
+### Float ABI Module Flags Metadata
+
+This module flag describes the floating-point ABI (the calling convention used
+to pass and return floating-point values) that the module was compiled for. The
+value is an `MDString` and must be one of:
+
+```{list-table}
+:header-rows: 1
+:widths: 30 70
+* - Value
+ - Meaning
+
+* - `"soft"`
+ - The software floating-point calling convention is used: floating-point
+ values are passed in general-purpose (integer) registers. Note this is
+ independent of whether floating-point hardware is used to perform
+ operations; see the `use-soft-float` function attribute for that.
----------------
antoniofrighetto wrote:
Was wondering whether this could use an example (e.g., ARM softfp already encompassed in soft here), but up to you.
https://github.com/llvm/llvm-project/pull/210821
More information about the llvm-commits
mailing list