[qt/clang/llvm-project]: Summary of bulk changes made
KDE Git Services - Bulk Change <[email protected]>
| Newsgroups | gmane.comp.kde.cvs |
|---|---|
| Message-ID | <[email protected]> |
Git repository change summary for qt/clang/llvm-project Pushed by mirror-service into branch 'upstream/users/arsenm/runtime-libcalls/fcmp-3way-compare-aeabi'. Changed from d77892c03087d3120bc6a3faed9a31cefd949504 to 6bc605cd0dcd47f83c42accd45dabe3a57e4fa13 Acknowledgement was received that this change introduces only existing code that has been pushed to another public open source repository. This change contains the following new commits: Git commit 6bc605cd0dcd47f83c42accd45dabe3a57e4fa13 by Matt Arsenault on 02/08/2026 at 21:44.. RuntimeLibcalls: Split soft-float three-way compares into distinct libcall kinds Soft-float compares come in two flavors. ARM AEABI (__aeabi_dcmpeq) and VFP (__eqdf2vfp) return a simple 0/1 boolean and use the existing O*_F* / UO_F* libcalls. The libgcc/compiler-rt helpers (__eqdf2, __ltdf2, ...) return a three-way -1/0/1, which the legalizer needs to insert the appropriate compare against. The three-way helpers previously masqueraded as O*_F* implementations, with the condition code recovered from a hardcoded switch. Model them instead as distinct operations. The legalizer then reasons about how to make use of the call result based on which flavor of operation is available, rather than special casing what the specific implementation is. This leaves the mspabi cases for a later cleanup, because it's 3-way usage is slightly different from the ARM case. Co-authored-by: Claude (Opus 4.8) <[email protected]> https://invent.kde.org/qt/clang/llvm-project/-/commit/6bc605cd0dcd47f83c42accd45dabe3a57e4fa13