[all-commits] [llvm/llvm-project] f541a5: [SystemZ] Implement orderFrameObjects().

Jonas Paulsson via All-commits all-commits at lists.llvm.org
Thu Jan 27 14:11:29 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: f541a5048a12b5fdd8a6ae1b6d1bd67366f00ecf
      https://github.com/llvm/llvm-project/commit/f541a5048a12b5fdd8a6ae1b6d1bd67366f00ecf
  Author: Jonas Paulsson <paulsson at linux.vnet.ibm.com>
  Date:   2022-01-27 (Thu, 27 Jan 2022)

  Changed paths:
    M llvm/lib/Target/SystemZ/SystemZFrameLowering.cpp
    M llvm/lib/Target/SystemZ/SystemZFrameLowering.h
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.h
    M llvm/test/CodeGen/SystemZ/args-11.ll
    M llvm/test/CodeGen/SystemZ/foldmemop-imm-01.ll
    M llvm/test/CodeGen/SystemZ/foldmemop-imm-02.mir
    M llvm/test/CodeGen/SystemZ/foldmemop-msc.mir
    A llvm/test/CodeGen/SystemZ/frame-27.mir
    M llvm/test/CodeGen/SystemZ/int-conv-01.ll
    M llvm/test/CodeGen/SystemZ/int-conv-02.ll
    M llvm/test/CodeGen/SystemZ/int-conv-06.ll
    M llvm/test/CodeGen/SystemZ/vector-constrained-fp-intrinsics.ll
    M llvm/test/DebugInfo/SystemZ/variable-loc.ll
    M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/systemz_generated_funcs.ll.generated.expected
    M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/systemz_generated_funcs.ll.nogenerated.expected

  Log Message:
  -----------
  [SystemZ] Implement orderFrameObjects().

By reordering the objects on the stack frame after looking at the users, a
better utilization of displacement operands will result. This means less
needed Load Address instructions for the accessing of these objects.

This is important for very large functions where otherwise small changes
could cause a lot more/less accesses go out of range.

Note: this is not yet enabled for SystemZXPLINKFrameLowering, but should be.

Review: Ulrich Weigand

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




More information about the All-commits mailing list