]> granicus.if.org Git - clang/commit
[RISCV] Support 'f' Inline Assembly Constraint
authorSam Elliott <selliott@lowrisc.org>
Wed, 31 Jul 2019 09:45:55 +0000 (09:45 +0000)
committerSam Elliott <selliott@lowrisc.org>
Wed, 31 Jul 2019 09:45:55 +0000 (09:45 +0000)
commit57eecd1e82552a97d9be307d136da29e94526d1f
tree96ce177aadc149c036fffa930c4942fb66452d3e
parent379d9dbd5081ee106b40ef58cf1df0fb82ef55d1
[RISCV] Support 'f' Inline Assembly Constraint

Summary:
This adds the 'f' inline assembly constraint, as supported by GCC. An
'f'-constrained operand is passed in a floating point register. Exactly
which kind of floating-point register (32-bit or 64-bit) is decided
based on the operand type and the available standard extensions (-f and
-d, respectively).

This patch adds support in both the clang frontend, and LLVM itself.

Reviewers: asb, lewis-revill

Reviewed By: asb

Subscribers: hiraditya, rbar, johnrusso, simoncook, apazos, sabuasal, niosHD, kito-cheng, shiva0217, jrtc27, MaskRay, zzheng, edward-jones, rogfer01, MartinMosbeck, brucehoult, the_o, rkruppe, PkmX, jocewei, psnobl, benna, Jim, s.egerton, cfe-commits, llvm-commits

Tags: #clang, #llvm

Differential Revision: https://reviews.llvm.org/D65500

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@367403 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Basic/Targets/RISCV.cpp
test/CodeGen/riscv-inline-asm.c