[all-commits] [llvm/llvm-project] ca23b2: [AArch64] Move machine bundle unpacking to PreEmit...

Florian Hahn via All-commits all-commits at lists.llvm.org
Mon Feb 15 08:40:39 PST 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: ca23b2c8ed2733f0584ca8bc0514b173938f1cdc
      https://github.com/llvm/llvm-project/commit/ca23b2c8ed2733f0584ca8bc0514b173938f1cdc
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2021-02-15 (Mon, 15 Feb 2021)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
    M llvm/test/CodeGen/AArch64/O0-pipeline.ll
    M llvm/test/CodeGen/AArch64/O3-pipeline.ll
    M llvm/test/CodeGen/AArch64/arm64-opt-remarks-lazy-bfi.ll
    M llvm/test/CodeGen/AArch64/rvmarker-pseudo-expansion-and-outlining.mir

  Log Message:
  -----------
  [AArch64] Move machine bundle unpacking to PreEmit2 phase.

This patch adjusts the placement of the bundle unpacking to just before
code emission. In particular, this means bundle unpacking happens AFTER
the machine outliner. With the previous position, the machine outliner
may outline parts of a bundle, which breaks them up.

This is an issue for BLR_RVMARKER handling, as illustrated by the
rvmarker-pseudo-expansion-and-outlining.mir test case. The machine
outliner should not break up the bundles created during pseudo
expansion.

This should fix PR49082.

Reviewed By: SjoerdMeijer

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




More information about the All-commits mailing list