summaryrefslogtreecommitdiff
path: root/src/arch
diff options
context:
space:
mode:
authorJens Rottmann <JRottmann@LiPPERTEmbedded.de>2008-10-22 22:24:47 +0000
committerMarc Jones <marc.jones@amd.com>2008-10-22 22:24:47 +0000
commit5e5bef5fbdc9ed15884f659ee6d822824a1080f1 (patch)
treefe7328f5002d9c941677e91f172faa494d76034c /src/arch
parent9a9e61b7ec3f40fdf3716b95a0cfa2c695626dd0 (diff)
downloadcoreboot-5e5bef5fbdc9ed15884f659ee6d822824a1080f1.tar.xz
Speed up copying coreboot to ram by using "movsl" instead of "movsb".
Also use different console messages for copying and uncompressing, like it's already done in similar code in other places. Signed-off-by: Jens Rottmann <JRottmann@LiPPERTEmbedded.de> Acked-by: Marc Jones <marc.jones@amd.com> git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3688 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'src/arch')
-rw-r--r--src/arch/i386/init/crt0.S.lb9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/arch/i386/init/crt0.S.lb b/src/arch/i386/init/crt0.S.lb
index 6a6c07be0e..de83b6c417 100644
--- a/src/arch/i386/init/crt0.S.lb
+++ b/src/arch/i386/init/crt0.S.lb
@@ -74,6 +74,11 @@ __main:
movl $_iseg, %edi
movl $_eiseg, %ecx
subl %edi, %ecx
+ movb %cl, %al
+ shrl $2, %ecx
+ andb $3, %al
+ rep movsl
+ movb %al, %cl
rep movsb
#else
leal 4+_liseg, %esi
@@ -215,7 +220,11 @@ crt_console_tx_string:
#if defined(CONSOLE_DEBUG_TX_STRING) && (ASM_CONSOLE_LOGLEVEL > BIOS_DEBUG)
.section ".rom.data"
+#if CONFIG_COMPRESS
+str_copying_to_ram: .string "Uncompressing coreboot to RAM.\r\n"
+#else
str_copying_to_ram: .string "Copying coreboot to RAM.\r\n"
+#endif
str_pre_main: .string "Jumping to coreboot.\r\n"
.previous