[all-commits] [llvm/llvm-project] ef0ecb: [NFCI][InstCombine] PR46661: multiple stores eligi...

Roman Lebedev via All-commits all-commits at lists.llvm.org
Fri Jul 10 07:50:05 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: ef0ecb7b03332fd5076a7ea641eadf0d01cd32c0
      https://github.com/llvm/llvm-project/commit/ef0ecb7b03332fd5076a7ea641eadf0d01cd32c0
  Author: Roman Lebedev <lebedev.ri at gmail.com>
  Date:   2020-07-10 (Fri, 10 Jul 2020)

  Changed paths:
    A llvm/test/Transforms/InstCombine/merging-multiple-stores-into-successor.ll

  Log Message:
  -----------
  [NFCI][InstCombine] PR46661: multiple stores eligible for merging into successor - worklist issue

The testcase should pass with a single instcombine iteration.


  Commit: 2655a70a046b67abe3bca01059d8767030f6e1c9
      https://github.com/llvm/llvm-project/commit/2655a70a046b67abe3bca01059d8767030f6e1c9
  Author: Roman Lebedev <lebedev.ri at gmail.com>
  Date:   2020-07-10 (Fri, 10 Jul 2020)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
    M llvm/test/Transforms/InstCombine/merging-multiple-stores-into-successor.ll

  Log Message:
  -----------
  [InstCombine] After merging store into successor, queue prev. store to be visited (PR46661)

We can happen to have a situation with many stores eligible for transform,
but due to our visitation order (top to bottom), when we have processed
the first eligible instruction, we would not try to reprocess the previous
instructions that are now also eligible.

So after we've successfully merged a store that was second-to-last instruction
into successor, if the now-second-to-last instruction is also a such store
that is eligible, add it to worklist to be revisited.

Fixes https://bugs.llvm.org/show_bug.cgi?id=46661


  Commit: 7103c87596efccd532e9fe04a6ba6a200fed8481
      https://github.com/llvm/llvm-project/commit/7103c87596efccd532e9fe04a6ba6a200fed8481
  Author: Roman Lebedev <lebedev.ri at gmail.com>
  Date:   2020-07-10 (Fri, 10 Jul 2020)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp

  Log Message:
  -----------
  Reland "[InstCombine] Lower infinite combine loop detection thresholds""

This relands commit cd7f8051ac7b6f08734102446482c1e5d951bfcc that was
reverted since lower threshold have successfully found an issue.
Now that the issue is fixed, let's wait until the next one is reported.

This reverts commit caa423eef0d128f35ac11ddbce34964caafb61c1.


Compare: https://github.com/llvm/llvm-project/compare/523a8513f8ba...7103c87596ef


More information about the All-commits mailing list