<div dir="ltr"><div><div><div>I see that there are several options to influence instruction scheduling, but there doesn't seem to be a lot of information about what they do, for example:<br><br>-misched-topdown -misched-bottomup<br><br></div>The description in MachineScheduler.cpp says:<br><br>"Force top-down list scheduling" and "Force bottom-up list scheduling"<br><br></div>Which isn't too helpful - where might I want to use these? Under what conditions might they improve an instruction schedule?<br><br></div>Similar questions for the instruction scheduler strategies: <br><br>-misched=(default, converge,<br><div><div>ilpmax, ilpmin, or shuffle)<br><br></div><div>And for the analysis heuristics: <br><br>-misched-cluster,<br>-misched-cyclicpath, -misched-regpressure, and -misched-<br>fusion<br><br></div><div>Are these things mutually exclusive or can they be combined? What combination will give the most rigorous analysis and improve scheduling (at the cost of longer runtime of llc)<br><br></div><div>Phil<br></div></div></div>