diff options
| author | Chandler Carruth <chandlerc@gmail.com> | 2012-03-21 10:58:47 +0000 |
|---|---|---|
| committer | Chandler Carruth <chandlerc@gmail.com> | 2012-03-21 10:58:47 +0000 |
| commit | 3ffccb3802194e043cbf2b89c784de3e573b1bbf (patch) | |
| tree | 3822c56c68fbb4896b680f02deacb536e3176eed /clang/lib/Index/IndexProvider.cpp | |
| parent | 1159250518c62bbbeaa7d7717acc2b0ed30d590d (diff) | |
| download | bcm5719-llvm-3ffccb3802194e043cbf2b89c784de3e573b1bbf.tar.gz bcm5719-llvm-3ffccb3802194e043cbf2b89c784de3e573b1bbf.zip | |
Teach instsimplify to gracefully degrade in the presence of instructions
not attched to a basic block or function. There are conservatively
correct answers in these cases, and this makes the analysis more useful
in contexts where we have a partially formed bit of IR.
I don't have any way to test this directly... suggestions welcome here,
but I'm not seeing anything sadly. I only found this using a subsequent
patch to the inliner which runs instsimplify on partially inlined
instructions, and even then only on a quite large program. I never got
a reasonable testcase out of it, and anything I do get is likely to be
quite fragile due to requiring an interaction of two different passes,
and the only result being a segfault if it goes wrong.
llvm-svn: 153176
Diffstat (limited to 'clang/lib/Index/IndexProvider.cpp')
0 files changed, 0 insertions, 0 deletions

