GCC (GNU Compiler Collection) is used in Symbian OS to compile the code for the target device. It is capable of generating ARM-based code in three different instruction sets, THUMB, ARMI and ARM4. S60 SDK does not support ARM4.
Symbian built a special version of GCC that is based on GCC 2.9 from year 1998. The compiler is distributed in every Symbian OS SDKs. It is normally located in \epoc32\gcc folder.
Since the GCC compiler used in pre-Symbian OS is quite old, the Department of Software Engineering, University of Szeged initiated a Symbian GCC Improvement Project. The goal is to produce more optimal code either by updating the current Symbian GCC version or upgrading to a new GCC version.