It's a new version of D47637: an attempt to validate sched models at generation time. If you start TableGen with this patch you'll see something like here:
warning:SchedRW machine model for inst 'ZIP1v8i8' ( WriteV ) should be removed because it's overriden 6 times for the following models:
FalkorModel KryoModel ExynosM1Model ExynosM3Model ThunderX2T99Model ThunderX2T99Model
warning:SchedRW machine model for inst 'ZIP2v16i8' ( WriteV ) should be removed because it's overriden 7 times for the following models:
CortexA57Model FalkorModel KryoModel ExynosM1Model ExynosM3Model ThunderX2T99Model ThunderX2T99Model
warning:SchedRW machine model for inst 'ZIP2v2i32' ( WriteV ) should be removed because it's overriden 6 times for the following models:
FalkorModel KryoModel ExynosM1Model ExynosM3Model ThunderX2T99Model ThunderX2T99Model
warning:SchedRW machine model for inst 'ZIP2v2i64' ( WriteV ) should be removed because it's overriden 7 times for the following models:
CortexA57Model FalkorModel KryoModel ExynosM1Model ExynosM3Model ThunderX2T99Model ThunderX2T99Model
warning:SchedRW machine model for inst 'ZIP2v4i16' ( WriteV ) should be removed because it's overriden 6 times for the following models:
FalkorModel KryoModel ExynosM1Model ExynosM3Model ThunderX2T99Model ThunderX2T99Model
warning:SchedRW machine model for inst 'ZIP2v4i32' ( WriteV ) should be removed because it's overriden 7 times for the following models:
CortexA57Model FalkorModel KryoModel ExynosM1Model ExynosM3Model ThunderX2T99Model ThunderX2T99Model
warning:SchedRW machine model for inst 'ZIP2v8i16' ( WriteV ) should be removed because it's overriden 7 times for the following models:
CortexA57Model FalkorModel KryoModel ExynosM1Model ExynosM3Model ThunderX2T99Model ThunderX2T99Model
warning:SchedRW machine model for inst 'ZIP2v8i8' ( WriteV ) should be removed because it's overriden 6 times for the following models:
FalkorModel KryoModel ExynosM1Model ExynosM3Model ThunderX2T99Model ThunderX2T99Model
warning:SchedRW machine model for inst 'BSWAP32r' ( WriteALU ) should be removed because it's overriden 7 times for the following models:
AtomModel SandyBridgeModel HaswellModel BroadwellModel Znver1Model SkylakeClientModel SkylakeServerModel
warning:SchedRW machine model for inst 'BSWAP64r' ( WriteALU ) should be removed because it's overriden 7 times for the following models:
AtomModel SandyBridgeModel HaswellModel BroadwellModel Znver1Model SkylakeClientModel SkylakeServerModel
warning:SchedRW machine model for inst 'BTC16mi8' ( WriteALULd WriteRMW ) should be removed because it's overriden 7 times for the following models:
AtomModel SandyBridgeModel HaswellModel BroadwellModel Znver1Model SkylakeClientModel SkylakeServerModel
warning:SchedRW machine model for inst 'BTC16ri8' ( WriteALU ) should be removed because it's overriden 7 times for the following models:
AtomModel SandyBridgeModel HaswellModel BroadwellModel Znver1Model SkylakeClientModel SkylakeServerModel
warning:SchedRW machine model for inst 'BTC16rr' ( WriteALU ) should be removed because it's overriden 7 times for the following models:
AtomModel SandyBridgeModel HaswellModel BroadwellModel Znver1Model SkylakeClientModel SkylakeServerModel
warning:SchedRW machine model for inst 'BTC32mi8' ( WriteALULd WriteRMW ) should be removed because it's overriden 7 times for the following models:
AtomModel SandyBridgeModel HaswellModel BroadwellModel Znver1Model SkylakeClientModel SkylakeServerModel
warning:SchedRW machine model for inst 'BTC32ri8' ( WriteALU ) should be removed because it's overriden 7 times for the following models:
AtomModel SandyBridgeModel HaswellModel BroadwellModel Znver1Model SkylakeClientModel SkylakeServerModel
I hope this diagnostic could be really useful for devs.
It's not a final patch. It should be extended with other diagnostics. But I'd like to show the idea here.
JFYI: if you start the standart build process with this patch applied you'll see the new diagnostic because TableGen will be changed and used.
Based on the // FIXME: TableGen is failed iff EXPENSIVE_CHECKS defined i think this is inverted?