How do I make sure my new phase is not the cause of unnecessary long compile time?
All optimization phases are timed by the compiler for ease of measurement. Please make your phase timed also. It’s simple and you only need to add two lines in your code, one after entering your phase, for example: Start_Timer(T_Aurora_LOCS_CU); and another before leaving your phase, for example: Stop_Timer(T_Aurora_LOCS_CU); and remember to include timing.h in your code. Naturally, you’ll need to define your timing phase, please look at file be/com/timing.h. After re-compiling, you can get timing info using -Wb,-ti1.