Fix interaction of CFI instructions with MachineOutliner.
- When checking if a candidate contains a CFI instruction, actually iterate over all of the instructions, instead of stopping halfway through.
- Make sure copied CFI instructions refer to the correct instruction.
I think it's somewhat inefficient by cloning the entire instruction, removing this and then adding one back.
CFIIndex should be reassigned for the new function (because the old function might optimize or shuffle it), so we will create new CFI instruction while adding CFIIndex to the new function. Can we just do this way?