<div dir="ltr">Hi,<div><br></div><div>As part of new pass manager work, I've been trying to get something like `opt -foo` working under the NPM, where `foo` is the name of a pass.</div><div><br></div><div>In the past there's been no reason to keep the names of passes consistent between NPM and legacy PM. But now there is a reason to make them match, so that we don't have to touch every single test that uses `opt`.</div><div><br></div><div>There are a couple of names that don't match though, for example the "basic alias analysis" pass is named "basicaa" under the legacy PM<br><font face="monospace">INITIALIZE_PASS_BEGIN(BasicAAWrapperPass, "basicaa",<br>                      "Basic Alias Analysis (stateless AA impl)", true, true)</font><br></div><div>but named "basic-aa" under the NPM</div><div><font face="monospace">FUNCTION_ALIAS_ANALYSIS("basic-aa", BasicAA())<br></font></div><div>. Almost all the other AA passes have a dash in them so I think it makes sense to rename "basicaa" -> "basic-aa".</div><div><br></div><div>Is there accepted wisdom on renaming pass names? Is a pass name a stable interface? When is it ok to rename a pass? If there are 800 usages of a flag, should I rename them atomically?</div></div>