summaryrefslogtreecommitdiffstats
path: root/lldb/packages/Python/lldbsuite/test/source-manager/TestSourceManager.py
diff options
context:
space:
mode:
authorVolkan Keles <vkeles@apple.com>2019-08-23 20:30:35 +0000
committerVolkan Keles <vkeles@apple.com>2019-08-23 20:30:35 +0000
commit277631e3b8dda9afaa5ddc16e69116455e68ae87 (patch)
treef8526058a0bd93627049388e4ae8ca5a8bcaa0fc /lldb/packages/Python/lldbsuite/test/source-manager/TestSourceManager.py
parent5a5a139917593409f1dc6af0b0e10caedf091fcb (diff)
downloadbcm5719-llvm-277631e3b8dda9afaa5ddc16e69116455e68ae87.tar.gz
bcm5719-llvm-277631e3b8dda9afaa5ddc16e69116455e68ae87.zip
[GlobalISel] Legalizer: Retry combining illegal artifacts as long as there new artifacts
Summary: Currently, Legalizer aborts if it’s unable to legalize artifacts. However, it’s possible to combine them after processing the rest of the instruction because the legalization is likely to generate more artifacts that allow ArtifactCombiner to combine away them. Instead, move illegal artifacts to another list called RetryList and wait until all of the instruction in InstList are legalized. After that, check if there is any new artifacts and try to combine them again if that’s the case. If not, abort. The idea is similar to D59339, but the approach is a bit different. This patch fixes the issue described above, but the legalizer still may be unable to handle some cases depending on when to legalize artifacts. So, in the long run, we probably need a different legalization strategy that handles this dependency in a better way. Reviewers: dsanders, aditya_nandakumar, qcolombet, arsenm, aemerson, paquette Reviewed By: dsanders Subscribers: jvesely, wdng, nhaehnle, rovka, javed.absar, hiraditya, Petar.Avramovic, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D65894 llvm-svn: 369805
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/source-manager/TestSourceManager.py')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud