Wasn't checking redundancy in adding states to the worklist, so could end up analyzing the same state many, many times. RoleNTimes exposed this behavior: going from 3 to 5 repetitions caused compilation to hang