[all-commits] [llvm/llvm-project] f157af: [builtins] Fix __floattitf and __floatuntitf on x86

Alexander Richardson via All-commits all-commits at lists.llvm.org
Tue Jun 27 09:22:57 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: f157afceb0bd6910c31fcfff1321a9b93c3a2b70
      https://github.com/llvm/llvm-project/commit/f157afceb0bd6910c31fcfff1321a9b93c3a2b70
  Author: Alex Richardson <alexrichardson at google.com>
  Date:   2023-06-27 (Tue, 27 Jun 2023)

  Changed paths:
    M compiler-rt/lib/builtins/floattitf.c
    M compiler-rt/lib/builtins/floatuntitf.c
    M compiler-rt/lib/builtins/fp_lib.h
    M compiler-rt/test/builtins/Unit/floattitf_test.c
    M compiler-rt/test/builtins/Unit/floatuntitf_test.c

  Log Message:
  -----------
  [builtins] Fix __floattitf and __floatuntitf on x86

These conversion functions were using LDBL_MANT_DIG (which is the 80-bit
extended float on x86) instead of the appropriate macro for the 128-bit
floating point type expected by the *tf* softfloat library calls.
This was discovered while testing D98261 (which allows building the *tf*
functions on x86).

This also changes the constants used in the two tests to use 128-bit
floating-point literals instead of long double ones to ensure that the
comparison succeeds on platforms with smaller long double (e.g. x86_64)

Reviewed By: scanon

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




More information about the All-commits mailing list