[LTO] Don't generate invalid modules if "LTOPostLink" MD already exists


I’m creating this thread to hopefully get some attention on the following (small) review, which has been stuck in review for a while with no reviewer interaction:

The goal of the diff is to avoid generating invalid modules if the LTOPostLink MD is already present. Currently, LLVM adds it assuming it doesn’t exist in the module yet and it can create verifier errors.

The proposed approach is to just check if the flag exists before adding it again, but there’s other approaches we could take too. We could reevaluate whether the flag is really needed and adds any value, or just enforce it better and error out if it’s already present (maybe with a CL option to bypass the check if someone needs to).

For context, we already applied this patch a month ago in our downstream fork and haven’t seen any failures related to it, so the proposed approach works as far I know.