[llvm-dev] [RFC] Framework for Finding and Using Similarity at the IR Level

Andrew Litteken via llvm-dev llvm-dev at lists.llvm.org
Wed Sep 9 14:59:51 PDT 2020


Thanks for the positive feedback!

All the patches are up now:

Elevating different constants to arguments: [IRSim][IROutliner] Adding support for consolidating functions with different output arguments. <https://reviews.llvm.org/D87296>
Extracting require outputs: [IRSim][IROutliner] Adding support for consolidating functions with different output arguments. <https://reviews.llvm.org/D87296>
Merging Output Blocks: [IRSim][IROutliner] Merging output blocks for extracted functions with outputs <https://reviews.llvm.org/D87298>
Cost Model: [IRSim][IROutliner] Adding a cost model, and debug option to turn the model off. <https://reviews.llvm.org/D87299>
OptRemarks: [IRSim][IROutliner] Adding OptRemarks for the IROutliner. <https://reviews.llvm.org/D87300>
Function Attribute Merging: [IRSim][IROutliner] Adding consistent function attribute merging <https://reviews.llvm.org/D87301>
DebugInfo Handling: [IRSim][IROutliner] Adding DebugInfo handling for IR outlined functions. <https://reviews.llvm.org/D87302>
Outlining from linkonceodr: [IRSim][IROutliner] Adding option to enable outlining from linkonceodr functions <https://reviews.llvm.org/D87309>
Flexibility for Isomorphic Predicates: [IRSim] Adding support for isomorphic predicates <https://reviews.llvm.org/D87310>
Flexibility for Commutative Instructions: [IRSim] Adding commutativity matching to structure checking <https://reviews.llvm.org/D87311>
Matching call instructions for similarity identification: [IRSim] Letting call instructions be legal for similarity identification. <https://reviews.llvm.org/D87312>
Outlining Calls: [IRSim][IROutliner] Allowing call instructions to be outlined. <https://reviews.llvm.org/D87314>
Matching GEP instructions for similarity identification: [IRSim] Letting gep instructions be legal for similarity identification. <https://reviews.llvm.org/D87315>
Outlining GEP instructions: [IRSim][IROutliner] Allowing GEP instructions to be outlined. <https://reviews.llvm.org/D87317>

Feedback, comments and reviews are welcome!

Andrew

> On Sep 2, 2020, at 5:04 AM, Renato Golin <rengolin at gmail.com> wrote:
> 
> Indeed, an awesome project and an excellent report!
> 
> Code size doesn't really get much attention, so the level of detail and the strong roadmap is refreshing.
> 
> Hopefully, the project will provide execution times along with code-size reductions.
> 
> I doubt it.
> 
> Outlining will (almost?) always make for slower code due to a lot more calls being made. But that's ok for embedded targets, that don't have strong speculative machinery. 
> 
> Also, if the program fits versus doesn't, then it will run infinitely faster. :D
> 
> Kristof, do you know who at Arm would be good to review those patches?
> 
> cheers,
> --renato

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20200909/4812d042/attachment.html>


More information about the llvm-dev mailing list