[IRSim] Treat Branch OperVals different from regular operands to ensure correct ordering
authorAndrew Litteken <andrew.litteken@gmail.com>
Sun, 2 Oct 2022 17:33:03 +0000 (12:33 -0500)
committerAndrew Litteken <andrew.litteken@gmail.com>
Sun, 19 Mar 2023 23:43:53 +0000 (18:43 -0500)
commitedcf3efd914409b2413c227fb333427585ea4957
tree8f962ea3fbd1abec6b0ed6c1a00fa5787eee8524
parent5558346c2b5b8e45a64255c49f23b4c852d730ac
[IRSim] Treat Branch OperVals different from regular operands to ensure correct ordering

Branch operands are different from regular instructions. They can have a mix of boolean values and branch instructions. This makes sure that branches are treated as more of a special case and makes sure that the successor blocks are always in the same order, and that they do not include the conditional argument.

Reviewer: paquette
Differential Revision: https://reviews.llvm.org/D139337
llvm/include/llvm/Analysis/IRSimilarityIdentifier.h
llvm/lib/Analysis/IRSimilarityIdentifier.cpp