The Machine Loop Invariant Code Motion pass (MLICM) hoists loop invariant instructions out of loops, e.g. address and other constant generating instructions. Retaining their debug location can cause erratic stepping behavior during debugging as well as incorrect source attribution wrt AutoFDO.
This patch proposes to remove debug locations for these instructions.
This is the first of 3 patches with the theme of instruction hoisting. I'm keeping them separate b/c 3 different passes are involved.
This is a case of true code motion, so retaining the original debug location is not justified.