[llvm-bugs] [Bug 42866] Floating point arguments are passed in integer registers for risc-v with -march=rv64g

via llvm-bugs llvm-bugs at lists.llvm.org
Thu Nov 28 07:55:32 PST 2019


https://bugs.llvm.org/show_bug.cgi?id=42866

Luís Marques <luis at luismarques.eu> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |INVALID
                 CC|                            |luis at luismarques.eu

--- Comment #1 from Luís Marques <luis at luismarques.eu> ---
This is correct. Targeting the floating-point extensions doesn't necessarily
mean you are using the hardfloat ABIs. To ensure that floating-point arguments
are passed in the floating-point registers for rv64g be sure to also pass to
clang the option `-mabi=lp64d`. I believe you can now also pass the option
--target=riscv64-linux and you'll implicitly get the `march` and `mabi` options
that you intended, and the values will be passed in the floating-point
registers (might require compiling clang from recent sources).

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20191128/dfc3ae50/attachment.html>


More information about the llvm-bugs mailing list