michalpaszkowski wrote:

[Here are the 
slides](https://llvm.org/devmtg/2019-10/slides/Paszkowski-LLVMCanon.pdf) that 
were presented at the LLVM Dev Meeting in 2019. It might be useful to include 
the link in the commit message for reference.

@nikic Thanks for catching more things in the review! Especially the 
commutative ordering of operands/arguments.

When it comes to including hashes in the naming algorithm (renaming is 
controlled using an option for already named values), the ideas is that by just 
looking at an instruction further down (a use) you can tell whether any inputs 
are different. And the other way around, by looking at initial instructions you 
can see how their "output footprint" has changed after transformations.

The example below is a bit outdated, but reflects the general idea we had when 
considering naming algorithms:
<img width="1327" alt="image" 
src="https://github.com/llvm/llvm-project/assets/13875746/fdb85b98-bce9-48df-91c0-35ffd115bae0";>
<img width="1323" alt="image" 
src="https://github.com/llvm/llvm-project/assets/13875746/24d74cf1-ad21-47c0-9057-6065c7a4f472";>


https://github.com/llvm/llvm-project/pull/68176
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to