"Yinghai Lu" yhlu@tyan.com writes:
- Using ROMCC to do propresser will help the size reduction?
Not directly. But it does cleanup the header files and increase the exposure to romcc. There are a small handful of things this make more maintainable.
- what is usage for MOVNTI? It is for GDB....
Look at ramtest.c. movnti is a non-teporal move (bypasses the cache). In some cases it can noticeably increase store performance. Last I measured in the cases it mattered it increased store performance by 3X.
- How to use GDB to debug LinuxBIOS? Is it only for linuxbios_ram?
Correct. Either an exception must be taken or a call to gdb_stub_breakpoint() needs to be made. At that point LinuxBIOS will stop and wait for the debugger. Assuming CONFIG_GDB_STUB is compiled in. For details on the gdb side, read up on the gdb remote serial protocol.
I'm not really a fan, I am still more productive with printf debugging. But implement ion exception handling support is a general win. And the support was easy to add.
- You will use llshell for crt0.s or auto.c debug?
That is the idea. Again I added it because it is available. It would not be hard to call out to it with an appropriate asm directive. If people find llshell useful.
- Current romcc only take constant parameters for non inline function? It
that right?
There is something weird going on that affects the generated code, so things don't work as smoothly as they should.
That said in theory function can be non-inline.
- Anyone has tried to compile LinuxBIOS under Suse 9.1? what's the
recommended platform for LinuxBIOS compliation? It seems Suse 9.1 can not compile Etherboot properly. I am always using RH9 to do the work. And just found I can not compile LB for S2885, (size>65536), but I can do it in Suse 9.1 pro.
The goal is to have LinuxBIOS compiling as many places as possible. As for recommendations we can call out specific revisions of the tool chain that are known good but I won't call out distros.
Size wise I know gcc-3.4 is about 2% better than gcc-3.3.
Interesting. On the purely size issue you can bump ROM_IMAGE_SIZE a little and see if it the build works.
As for etherboot I don't know what your compile failure is. So I don't know how to diagnose that.
Eric