-
Notifications
You must be signed in to change notification settings - Fork 15.1k
Closed
Labels
Description
Bugzilla Link | 46873 |
Version | trunk |
OS | Linux |
CC | @qcolombet,@yuanfang-chen |
Extended Description
When using -run-pass with a single pass, LiveIntervals is not available in the final verifier run, and thus does not catch broken live intervals introduced by the pass. This seems to only work correctly only if another non-verifier pass is forced to run after the pass you are trying to observe.
A workaround is to either force a run of another pass that needs LiveIntervals after the interesting pass, or to use -start-before/-start-after around the pass
e.g.
llc -run-pass=breaks-liveints -verify-machineinstrs foo.mir // No verifier error
llc -run-pass=breaks-liveints,somethingelse -verify-machineinstrs // Verifier error
llc -start-before=breaks-liveints -stop-after=somethingelse -verify-machineinstrs // Verifier error