После последних багфиксов sdcc вполне довели до более-менее нормального уровня. К сожалению, до gcc ему еще ой как далеко (производимый sdcc ассемблерный код тяжело назвать хоть немного оптимизированным), но больше никаких компиляторов под STM8 нет, увы.
Вот еще, правда, есть косяк с stm8flash: он не умеет писать EEPROM и стирать залоченные МК, приходится для этого заводить виртуалобкс с хрюнделем и стирать...
Если кому интересно, все мои велосипеды для STM8
на сосфорже компиляются sdcc и прошиваются при помощи stm8flash.