http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48649
--- Comment #4 from Popielewicz <vasco at icpnet dot pl> 2011-04-17 16:17:21 UTC --- It seems that in this specific case the gcc 4.3.5 has problems with modulo operation. Even more simpler program using modulo alone produces spill message . If in the supplied program one removes modulo, for example replaces it with addition ,then program compiles and links OK, but of course aborts at free call. Of course all the time optimizations are switched off. BTW I could compile about 50% of functions in libgcc. So the compiler is not absolutely useless but rather not usable.