clangir
clangir copied to clipboard
[CIR] Extend support for floating point attributes
This commit extends the support for floating point attributes parsing by using
the new AsmParser::parseFloat(fltSemnatics, APFloat&)
interface.
As a drive-by, this commit also harmonizes the cir.fp print/parse namespace
usage, and adds the constraint of supporting only "CIRFPType"s for cir.fp in
tablegen instead of verifying it manually in the parsing logic.
This commit is based on top of a to-be-upstreamed commit which extends the upstream MLIR float type parsing. Upstream parsing of float type has full capability only through parsing the Builtin Dialect's FloatAttr
. Thos commit exposes the same capabilities to downstream users.
This PR should resolve (at least) GCC-C-execute-ieee-fp-cmp-2
and GCC-C-execute-ieee-fp-cmp-4
, paving the way to other GCC-C-execute-ieee-*
tests passing from the SingleSource suite. It resolves #559 .
@Lancern - may be related to work that you are working on 🙏 (e.g. #536 #571 ).
Upstream patch: https://github.com/llvm/llvm-project/pull/90442
Nathan just did a rebase, can you please update? Sorry for the churn
Rebased 🙏 Update on upstream commit: PR was approved, tying to wait a bit more for the core developers who most recently touched that code (Jeff & River) to take a look. Will merge by Friday if no further comments arise.
Thanks for going the extra length to make sure this works!
Upstream patch: llvm/llvm-project#90442
Merged upstream 🎉 Waiting for the next CIR rebase and I'll update this one.
@bcardosolopes - is there any planned rebase anytime soon? This PR is blocked by getting the upstream patch. Alternatively, I assume we can cherry-pick it here and there's a 95% chance that it will dissolve on the next rebase. Let me know what you prefer 🙏🏼
@bcardosolopes - is there any planned rebase anytime soon? This PR is blocked by getting the upstream patch. Alternatively, I assume we can cherry-pick it here and there's a 95% chance that it will dissolve on the next rebase. Let me know what you prefer 🙏🏼
@lanza wdyt?
I pushed a rebase just now. Should be good to go :p