Skip to content

Commit dc42eae

Browse files
authored
Merge pull request #281 from riscv-non-isa/undef-bit-in-hfpcc
Explicitly say upper bit in GPR is undefined when passing floating po…
2 parents 1ad6811 + d5e5348 commit dc42eae

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

riscv-cc.adoc

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -234,10 +234,12 @@ floating-point reals.
234234

235235
A struct containing one floating-point real and one integer (or bitfield), in
236236
either order, is passed in a floating-point register and an integer register,
237-
without extending the integer to XLEN bits, provided the floating-point real
238-
is no more than ABI_FLEN bits wide and the integer is no more than XLEN bits wide,
239-
and at least one floating-point argument register and at least one integer
240-
argument register is available. Otherwise, it is passed according to the
237+
provided the floating-point real is no more than ABI_FLEN bits wide and the
238+
integer is no more than XLEN bits wide, and at least one floating-point
239+
argument register and at least one integer argument register is available.
240+
If the struct is passed in this manner, and the integer is narrower than XLEN
241+
bits, the remaining bits are unspecified.
242+
If the struct is not passed in this manner, then it is passed according to the
241243
integer calling convention.
242244

243245
Unions are never flattened and are always passed according to the integer

0 commit comments

Comments
 (0)