[all-commits] [llvm/llvm-project] c1d6dc: [compiler-rt][AVR] Use correct return value for __...

Ayke via All-commits all-commits at lists.llvm.org
Wed May 4 13:52:43 PDT 2022

  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: c1d6dca694d001efe3d332db539348a9829d3869
  Author: Ayke van Laethem <aykevanlaethem at gmail.com>
  Date:   2022-05-04 (Wed, 04 May 2022)

  Changed paths:
    M compiler-rt/lib/builtins/fp_compare_impl.inc

  Log Message:
  [compiler-rt][AVR] Use correct return value for __ledf2 etc

Previously the default was long, which is 32-bit on AVR. But avr-gcc
expects a smaller value: it reads the return value from r24.

This is actually a regression from https://reviews.llvm.org/D98205.
Before D98205, the return value was an enum (which was 2 bytes in size)
which was compatible with the 1-byte return value that avr-gcc was
expecting. But long is 4 bytes and thus places the significant return
value in a different register.

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

More information about the All-commits mailing list