[PATCH] D122207: [IROutliner][IRSim] Add all outlined region basic blocks to canonical numbering to add basic blocks to generated PHINode numbering generation.

Andrew Litteken via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Mar 21 20:39:24 PDT 2022


AndrewLitteken created this revision.
AndrewLitteken added a reviewer: paquette.
Herald added subscribers: ormris, hiraditya.
Herald added a project: All.
AndrewLitteken requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

Issue: https://github.com/llvm/llvm-project/issues/54431

PHINodes that need to be generated to accommodate a PHINode outside the region due to different output paths need to have their own numbering to determine the number of output schemes required to properly handle all the outlined regions.  This numbering was previously only determined by the order and values of the incoming values, as well as the parent block of the PHINode.  This adds the incoming blocks to the calculation of a hash value for these PHINodes as well, and the supporting infrastructure to give each block in a region a corresponding canonical numbering.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D122207

Files:
  llvm/lib/Analysis/IRSimilarityIdentifier.cpp
  llvm/lib/Transforms/IPO/IROutliner.cpp
  llvm/test/Transforms/IROutliner/phi-node-exit-path-order.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D122207.417174.patch
Type: text/x-patch
Size: 8615 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20220322/52281f6f/attachment.bin>


More information about the llvm-commits mailing list