[all-commits] [llvm/llvm-project] 4be86d: [IROutliner] Disallow outlining calls that return ...
Andrew Litteken via All-commits
all-commits at lists.llvm.org
Tue Jan 25 11:09:50 PST 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 4be86d18c0fc97a5eab26628e2a830f914c591eb
https://github.com/llvm/llvm-project/commit/4be86d18c0fc97a5eab26628e2a830f914c591eb
Author: Andrew Litteken <andrew.litteken at gmail.com>
Date: 2022-01-25 (Tue, 25 Jan 2022)
Changed paths:
M llvm/include/llvm/Transforms/IPO/IROutliner.h
A llvm/test/Transforms/IROutliner/illegal-returns-twice.ll
Log Message:
-----------
[IROutliner] Disallow outlining calls that return twice.
Functions that return twice can cause the IR Outliner to miscompile the given program. These function rely on information about the stack to be the same, and this may not necessarily be the case if called from an outlined function. So, we simply call these instructions illegal for the outliner to remove.
Reviewers: paquette
Differential Revision: https://reviews.llvm.org/D110007
More information about the All-commits
mailing list