[IRSim][IROutliner] Ignoring Musttail Function
authorAndrew Litteken <andrew.litteken@gmail.com>
Wed, 9 Mar 2022 18:35:09 +0000 (10:35 -0800)
committerAndrew Litteken <andrew.litteken@gmail.com>
Mon, 14 Mar 2022 00:27:25 +0000 (19:27 -0500)
commit1643f01232b41b93e5f3a21d89b111efab0e378a
treecd4bc31651d1e952d861af449d05f5e5a5a14f5e
parent66f90fdff1812b2054a07c860a90f48de4f9eb48
[IRSim][IROutliner] Ignoring Musttail Function

Musttail calls require extra handling to properly propagate the calling convention information and tail call information. The outliner does not currently do this, so we ignore call instructions that utilize the swifttailcc and tailcc calling convention as well as functions marked with the attribute musttail.

Reviewers: paquette, aschwaighofer

Differential Revision: https://reviews.llvm.org/D120733
llvm/include/llvm/Analysis/IRSimilarityIdentifier.h
llvm/include/llvm/Transforms/IPO/IROutliner.h
llvm/lib/Analysis/IRSimilarityIdentifier.cpp
llvm/test/Transforms/IROutliner/outlining-musttail.ll [new file with mode: 0644]
llvm/test/Transforms/IROutliner/outlining-swifttailcc.ll [new file with mode: 0644]
llvm/test/Transforms/IROutliner/outlining-tailcc.ll [new file with mode: 0644]