Machine Instruction flags for fast math support and MIR print support
|110 ↗||(On Diff #142973)|
The padding in the MIFlag enum is such that the new flags do not change the size of the class, however, the Flags field changes it by 1 byte in size.
The code in lib/CodeGen/SelectionDAG/InstrEmitter.cpp sets the flags, which will shortly be D45710, without that, nothing changes in the mir tests, ergo the check component testing for the fast math flags will cause modified tests which run through the MIR printer to fail until those changes are checked in.
If the instructions are codegened from SelectionDAG. This seems to be missing the part to parse these names and set the flags in the MIR parser, which is what should be setting the flags here.
|1 ↗||(On Diff #143855)|
This test belongs in test/CodeGen/MIR/X86. The sqrt also isn't needed in the name, just fast-math-flags would be better
|8–12 ↗||(On Diff #143855)|
Don't need the IR section
|16–17 ↗||(On Diff #143855)|
You can strip out most of this stuff
|74–75 ↗||(On Diff #143855)|
This doesn't need to be a meaningful function. You can just have one sample instruction for each individual flag, and maybe a few with combination flags for good measure