Máš povoleny optimalizace v nastavení? Tools - Option - Output - zaškrnuto SSA optimization a Optimization level 4 nebo 5. Delší než assembler to ale asi bude vždy, už z principu univerzálnosti všech knihoven v mikroC. Počítání mikrosekund jsem netestoval, obvykle tomu kvůli spotřebě věnuju nějaký Timer a v mezidobí dám mikrokontroler do sleepu.
Srovnání Keil <-> mikroC je ale hodně zajímavé. Keil má u ARM u podobných projektů tak poloviční až třetinovou výslednou velikost kódu. Asi je to ale taky dáno tím, že pro Keil si všechny knihovny píšu sám, zvlášť u life support aplikací, tam se nemůžu spolehnout na knihovny ve formě "blackboxu", kde je k dispozici jen binárka bez zdrojáků, jako v mikroC.