[PATCH] D79537: Add NoMerge MIFlag to avoid MIR branch folding

Reid Kleckner via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed May 13 14:10:08 PDT 2020


rnk added inline comments.


================
Comment at: llvm/include/llvm/CodeGen/MachineInstr.h:109
                                         // floatint-point exceptions.
+    NoMerge      = 1 << 15,             // Instruction should not be merged
   };
----------------
arsenm wrote:
> It's not obvious to me what this means. These are also supposed to be droppable optimization flags, but it seems like you're using this for something semantically required?
I don't think `BundledPred` or `FrameSetup` are droppable, IMO they are semantically significant.

The only alternative I see to this would be to encode this information in the MCInstrDesc, which would require mirroring the entire family of X86 CALL instructions, of which there are many.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D79537/new/

https://reviews.llvm.org/D79537





More information about the llvm-commits mailing list