This PR does two things: 1. Introduce `-opt-bisect=<inclusive_integer_interval>` for running ranges of passes, where `inclusive_integer_interval` could be: - `-1` to run all pases - `0` to run no passes - `10-12` to run passes 10 through 12 - `10-12,15-18 `to run passes 10 through 10 and 15 through 18 `-opt-bisect-limit=N` now maps to `-opt-bisect=1-N` 2. Introduces `IntegerInclusiveInterval` in ADT to represent these intervals and the ability to parse string ranges (from the command line). The motivation to move this into ADT is that both `opt-bisect` and `debug-counter` need to parse intervals from the command line. `reduce-chunk-list` also relied on a interval object, so I refactored that to use `IntegerInclusiveInterval` as well.
4.0 KiB
4.0 KiB