This change uses instruction's comesBefore method to simplify the code significantly. There's little compile time concern here because getSpillCost already calls comesBefore on every basic block which contains a vectorization candidate. The only additional times we'll build basic block ordering is when we can't schedule a vector candidate anywhere in the containing block.
Details
Details
Diff Detail
Diff Detail
Unit Tests
Unit Tests
Time | Test | |
---|---|---|
60,050 ms | x64 debian > MLIR.Examples/standalone::test.toy | |
60,020 ms | x64 debian > libFuzzer.libFuzzer::large.test |
Event Timeline
Comment Actions
Rebase and simplify patch after removing cap mechanism entirely. Remaining review should be quick provided I'd not missing some algorithmic detail.
clang-format: please reformat the code