[all-commits] [llvm/llvm-project] adaf54: [GlobalISel] Limit shift_of_shifted_logic_chain to...

David Green via All-commits all-commits at lists.llvm.org
Wed Aug 23 10:17:52 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: adaf545a506bd3fd21a7293e27d5a4ae3a4aea31
      https://github.com/llvm/llvm-project/commit/adaf545a506bd3fd21a7293e27d5a4ae3a4aea31
  Author: David Green <david.green at arm.com>
  Date:   2023-08-23 (Wed, 23 Aug 2023)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/prelegalizercombiner-trivial-arith.mir

  Log Message:
  -----------
  [GlobalISel] Limit shift_of_shifted_logic_chain to non-zero folds

After D157690 we are seeing some crashes from Global ISel, which seem to be
related to the shift_of_shifted_logic_chain combine that can remove too many
instructions if the shift amount is zero.

This limits the fold to non-zero shifts, under the assumption that it is better
in that case to fold away the shift to a COPY.

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




More information about the All-commits mailing list