summaryrefslogtreecommitdiff
path: root/util/mkelfImage/kunzip_src/arch/i386/lib/start.S
diff options
context:
space:
mode:
authorStefan Reinauer <stepan@coresystems.de>2008-02-15 18:16:06 +0000
committerStefan Reinauer <stepan@openbios.org>2008-02-15 18:16:06 +0000
commitb34eea348cb7d6d9c93d17d51a1f322114b8f15d (patch)
tree38dd85932dacaa7c7a174d87307baff6210d70c4 /util/mkelfImage/kunzip_src/arch/i386/lib/start.S
parent46fc14dcc8cdba1d66ae6fa9fdcbbf33265d676e (diff)
downloadcoreboot-b34eea348cb7d6d9c93d17d51a1f322114b8f15d.tar.xz
Importing mkelfimage from
ftp://ftp.lnxi.com/pub/mkelfImage/mkelfImage-2.7.tar.gz Signed-off-by: Stefan Reinauer <stepan@coresystems.de> Acked-by: Stefan Reinauer <stepan@coresystems.de> git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3103 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'util/mkelfImage/kunzip_src/arch/i386/lib/start.S')
-rw-r--r--util/mkelfImage/kunzip_src/arch/i386/lib/start.S36
1 files changed, 36 insertions, 0 deletions
diff --git a/util/mkelfImage/kunzip_src/arch/i386/lib/start.S b/util/mkelfImage/kunzip_src/arch/i386/lib/start.S
new file mode 100644
index 0000000000..fec7c9da66
--- /dev/null
+++ b/util/mkelfImage/kunzip_src/arch/i386/lib/start.S
@@ -0,0 +1,36 @@
+.text
+
+__original_registers:
+ .long 0, 0, 0, 0, 0, 0 , 0 , 0
+__entry:
+ .long entry
+
+.globl __start
+__start:
+ movl %eax, 0+__original_registers
+ movl %ebx, 4+__original_registers
+ movl %ecx, 8+__original_registers
+ movl %edx, 12+__original_registers
+ movl %esi, 16+__original_registers
+ movl %edi, 20+__original_registers
+ movl %esp, 24+__original_registers
+ movl %ebp, 28+__original_registers
+
+__normal_start:
+ movl $_estack, %esp
+ call kunzip
+
+.globl jmp_to_program_entry
+jmp_to_program_entry:
+ movl 4(%esp), %eax
+ movl %eax, __entry
+ movl 0+__original_registers, %eax
+ movl 4+__original_registers, %ebx
+ movl 8+__original_registers, %ecx
+ movl 12+__original_registers, %edx
+ movl 16+__original_registers, %esi
+ movl 20+__original_registers, %edi
+ movl 24+__original_registers, %esp
+ movl 28+__original_registers, %ebp
+ jmp *__entry
+ \ No newline at end of file