Discuss here different C compiler set ups, and compiling executables for the ESP8266
User avatar
By obvy
Squonk wrote:Here is an important hint: Tensilica's XCC compiler is not only based on GCC, but also on Open64:
http://ip.cadence.com/uploads/pdf/XCC%2 ... erview.pdf

Maybe our 106Micro core is better supported (call0) than in pure GCC?

Nice blast from the past. Funny thing, I keep an eye on open-source compilers (why? this thread gives good answer - I want to have a compiler which can be hacked in couple of hours for completely new arch; none qualifies, so I keep looking - for many-many years now) - and I never heard of Open64. Can you believe there was time when people researched and implemented new advanced compilers, and it wasn't GCC/LLVM duopoly (each of which is pretty mediocre)?

so how can we check if Open64 is using call0 vs. windowed ABI?

By checking Open64 features list? No worries, it doesn't support Xtensa at all. But if you have some Itanium hardware rusting in your basement, it can, besides the usual x86 crap. That's why nobody heard about it - who needs a compiler for just couple of archs? Funny thing is that Open64 is GPL, so where's the heck is XCC source? Or did they license it from SGI yet before GPL times?
User avatar
By jcmvbkbc
#489 @sounds
jcmvbkbc wrote:There are two ABIs for xtensa: windowed register ABI and call0 ABI. Windowed ABI is well documented, but I can't find much about stack layout of the call0 ABI (I'll search for it more).

Stupid me, the call0 ABI is documented in the ISA book, chapter 8 "Using Xtensa Architecture".
User avatar
By RichardS
#1087 I split off the trailing message on this thread as they related to the new working version of GCC... so if you want to follow that one it is here new-working-gcc-compiler I also made a nice English link for people to share :-)

General GCC chat can still go here, and anything that is directly related to the new working version can go there.