River Riddle
af9760fe18
Replace remaining usages of the Instruction class with Operation.
...
PiperOrigin-RevId: 240777521
2019-03-29 17:50:04 -07:00
River Riddle
9ffdc930c0
Rename the Instruction class to Operation. This just renames the class, usages of Instruction will still refer to a typedef in the interim.
...
This is step 1/N to renaming Instruction to Operation.
PiperOrigin-RevId: 240431520
2019-03-29 17:42:50 -07:00
Lei Zhang
eeadfbc170
Change getBroadcastedShape() to return result shape via parameter
...
This is a more efficient way than returning SmallVector directly.
PiperOrigin-RevId: 239407024
2019-03-29 17:25:38 -07:00
Lei Zhang
7972dcef84
Pull shape broadcast out as a stand-alone utility function
...
So that we can use this function to deduce broadcasted shapes elsewhere.
Also added support for unknown dimensions, by following TensorFlow behavior.
PiperOrigin-RevId: 237846065
2019-03-29 17:12:11 -07:00
River Riddle
2d2b40bce5
Add basic infrastructure for instrumenting pass execution and analysis computation. A virtual class, PassInstrumentation, is provided to allow for different parts of the pass manager infrastructure. The currently available hooks allow for instrumenting:
...
* before/after pass execution
* after a pass fails
* before/after an analysis is computed
After getting this infrastructure in place, we can start providing common developer utilities like pass timing, IR printing after pass execution, etc.
PiperOrigin-RevId: 237709692
2019-03-29 17:10:06 -07:00
River Riddle
d43f630de8
NFC: Remove 'Result' from the analysis manager api to better reflect the implementation. There is no distinction between analysis computation and result.
...
PiperOrigin-RevId: 237093101
2019-03-29 17:02:12 -07:00
River Riddle
1d87b62afe
Add support for preserving specific analyses in the analysis manager. Passes can now preserve specific analyses via 'markAnalysesPreserved'.
...
Example:
markAnalysesPreserved<DominanceInfo>();
markAnalysesPreserved<DominanceInfo, PostDominanceInfo>();
PiperOrigin-RevId: 237081454
2019-03-29 17:01:41 -07:00
River Riddle
7b0b344c5e
Add a unittests directory for MLIR and start adding tests for OperandStorage from InstructionSupport.h.
...
PiperOrigin-RevId: 236911640
2019-03-29 16:58:05 -07:00