[all-commits] [llvm/llvm-project] e03ba2: [AVR] Improve inline rotate/shift expansions

Ayke via All-commits all-commits at lists.llvm.org
Sat Oct 31 15:16:22 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: e03ba2198dbb6b053f600c798770593d8f69055d
      https://github.com/llvm/llvm-project/commit/e03ba2198dbb6b053f600c798770593d8f69055d
  Author: Ayke van Laethem <aykevanlaethem at gmail.com>
  Date:   2020-10-31 (Sat, 31 Oct 2020)

  Changed paths:
    M llvm/lib/Target/AVR/AVRISelLowering.cpp
    M llvm/test/CodeGen/AVR/rot.ll
    M llvm/test/CodeGen/AVR/shift.ll

  Log Message:
  -----------
  [AVR] Improve inline rotate/shift expansions

These expansions were rather inefficient and were done with more code
than necessary. This change optimizes them to use expansions more
similar to GCC. The code size is the same (when optimizing for code
size) but somehow LLVM reorders blocks in a non-optimal way. Still, this
should be an improvement with a reduction in code size of around 0.12%
(when building compiler-rt).

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




More information about the All-commits mailing list