Romcc

Romcc

Romcc is a C compiler which generates code which uses only processor registers to store variables, instead of RAM. It was designed to aid with RAM initialization inside the BIOS. Before the RAM has been initialized there is no RAM available for use, and so therefore romcc code uses only the registers. GCC would not be suitable for writing code like this as it requires a stack, which clearly would have to be contained in RAM.

All functions compiled by romcc will be inlined, which leads to all code being roughly 3x larger than hand-coded assembly.

See also

* coreboot

External links

* [http://coreboot.org/pipermail/coreboot/2003-November/005788.html RomCC: post to the coreboot mailing list, November 2003]


Wikimedia Foundation. 2010.

Игры ⚽ Нужна курсовая?

Look at other dictionaries:

  • coreboot — Тип Микропрограмма (BIOS) Разработчик Ronald G. Minnich Последняя версия v4 Лицензия GNU General Public License Сайт www.coreboot.org …   Википедия

  • Coreboot — Infobox Software name = Coreboot caption = Coreboot author = Ronald G. Minnich, Eric Biederman, Olli Lo, Stefan Reinauer, the coreboot community developer = released = 1999 latest release version = latest release date = latest preview version =… …   Wikipedia

  • Coreboot — Saltar a navegación, búsqueda Crecimiento de LinuxBios desde 2002 a 2007. CoreBoot es un proyecto que se conocía con el nombre de LinuxBIOS, siendo de software libre, respaldado por la Free Software Foundation (FSF) …   Wikipedia Español

  • Coreboot — Тип Микропрограмма (BIOS) Разработчик Ronald G. Minnich Версия v2 Тестовая версия v3 Лицензия GNU General Public License …   Википедия

  • coreboot — Original author(s) Ronald G. Minnich, Eric Biederman, Olli Lo, Stefan Reinauer, the coreboot community Initial release 1999 …   Wikipedia

  • coreboot — Autor Ronald G. Minnich, Eric Biederman, Olli Lo, Stefan Reinauer, comunidad coreboot coreboot.org Información general Lanzamiento 1999 …   Wikipedia Español

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”