1/* 2 * (c) 2008-2009 Adam Lackorzynski <adam@os.inf.tu-dresden.de>, 3 * Alexander Warg <warg@os.inf.tu-dresden.de> 4 * economic rights: Technische Universität Dresden (Germany) 5 * 6 * This file is part of TUD:OS and distributed under the terms of the 7 * GNU General Public License 2. 8 * Please see the COPYING-GPL-2 file for details. 9 */ 10#define __ASSEMBLY__ 11#include <l4/sys/compiler.h> 12 13 .section .text 14 15ENTRY(__crt_dummy__) 16ENTRY(_start) 17ENTRY(start) 18 19 test %ecx, %ecx 20 jne 1f 21 popl %ecx /* ptr to kernel info page is on init stack */ 221: 23 leal _stack,%esp /* reset stack */ 24 pushl %ecx /* push args to init() */ 25 pushl $_exit 26 jmp init 27 28ENTRY(__main) 29 ret 30 31 .bss 32 33 .space 2048 34ENTRY(_stack) 35