I'd like to wait it to produce smaller code. Otherwise if I enable superio + ati support, It will be greater than 64K in debug mode.
When will that be ready?
Regards
YH
-----邮件原件----- 发件人: ebiederman@lnxi.com [mailto:ebiederman@lnxi.com] 发送时间: 2004年5月28日 7:26 收件人: LinuxBIOS 主题: [COMMIT] romcc 0.63 and some fixes...
I finally have romcc to the point where I can seriously look at size optimizations. I am finally there after a lot of bug fixing and experimentation.
Because of added correctness in handling of small types I have measured about a 1K growth on the hdama port or about 3%. But things should start shrinking soon.
More optimization opportunities have been exposed so which breaks some code that was not right but lucky.
Have fun with this.
Eric
- Upgrade to romcc version 0.63 This includes more test cases Lots of small bug fixes A complete C preprocessor is now built in Initial support for not inlining everything __attribute__((noinline)) works Better command line options and help Constants arrays can be read at compile time Asm statements that are not volatile will now be removed when their outputs go unused Loads and stores that are not volatile will be removed when their values go unused The number of FIXMES in the code is finally starting to go down.
Tags romcc_0_38 and romcc_0_63 are present. In case you need to regress the version of romcc.
- Added volatile to asm statements in auto.c and failover.c - Updated the romcc version in Config.lb - Fixed type sizes in romcc_io.h and io.h inl() returning a byte was nasty
Modified Files: src/arch/i386/include/arch/romcc_io.h src/arch/i386/include/arch/io.h src/mainboard/arima/hdama/auto.c src/mainboard/arima/hdama/failover.c src/config/Config.lb
_______________________________________________ Linuxbios mailing list Linuxbios@clustermatic.org http://www.clustermatic.org/mailman/listinfo/linuxbios
YhLu YhLu@tyan.com writes:
I'd like to wait it to produce smaller code. Otherwise if I enable superio + ati support, It will be greater than 64K in debug mode.
When will that be ready?
The code is feature complete so it will correctly not inline functions (producing smaller code) if it does not run out of registers.
My simple test cases have worked well.
My complicated test case that uses an old version of production code ran out of registers after consuming just the 8 general purpose registers. So mostly it is a matter of playing with the code, and figuring out why weird things are happening.
Eric