I am using carbide.C++ version 2.0 SDK I am building a video based application for S-60 3rd edition device. I have licensed version of RVCT 2.2. From the forums and blogs I have learned that RVCT provides smaller and faster application binaries. So I built my application in release mode using RVCT ( ie selecting target ARMV5) and then using GCCE. Surprisingly I found that GCCE application is faster and smaller in size than RVCT complied one.
In my MMP file I have added following lines as advised in http://discussion.forum.nokia.com/fo...d.php?t=100949
OPTION ARMCC --no_debug_macros -O2 -Otime
OPTION GCCE -O2 -fno-unit-at-a-time
I found that in case of GCCE changing the optimization level ( ie using O1 or O0 or O3 ) changes the speed of my application ie application is slightly faster for O3 and slower for O1 and O0.
But in case of RVCT changing the optimization level in above lines in mmp file has no effect on size of binary or speed of application.
I also changed Optimization level for release configuration in ..\Epoc32\tools\cl_arm.pm file but no change was observed.
In S60_3rd_MR\Epoc32\tools\compilation_config\armv5_abiv2.mk file I set REL_OPTIMISATION=-O2 -Otime
still no change was observed.
Can anyone specify what is correct way of changing Optimization level for RVCT.
Also has anyone really observed that RVCT complied code gives faster code than GCCE complied code?