[qt/clang/llvm]: 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
Pushed by mirror-service into branch 'upstream/users/arsenm/fcmp-generic-tristate-op'.
Changed from fee444e754bae0fa58913dd49f2795cd9dc982a6 to 2ab8e287f15812147cd97e519604d820d5d46bf1
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/-/commit/6bc605cd0dcd47f83c42accd45dabe3a57e4fa13

Git commit 2ab8e287f15812147cd97e519604d820d5d46bf1 by Matt Arsenault on 03/08/2026 at 04:28..
RuntimeLibcalls: Add generic FCMP3_F* three-way compare for single-symbol ABIs

MSP430's __mspabi_cmpd/__mspabi_cmpf are one three-way compare symbol serving
every predicate, previously modeled as six suffixed impls each. Replace them
with a single generic operator FCMP3_*, and give softenSetCCOperands a 3rd
lowering option. After the boolean O*_F* and the per-predicate FCMP3_<pred>_F*
helpers, use the generic FCMP3_F* helper tested with the predicate's condition
code.

Also opt __nedf2 out of the MSP430 default set: it was the only libgcc F64
compare not already opted out, so it would otherwise provide FCMP3_UNE_F64 and
win over __mspabi_cmpd for not-equal.

Co-authored-by: Claude (Opus 4.8) <[email protected]>
https://invent.kde.org/qt/clang/llvm/-/commit/2ab8e287f15812147cd97e519604d820d5d46bf1
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.