Changeset 197ef43 in mainline for uspace/lib/c/arch
- Timestamp:
- 2011-01-29T23:52:07Z (14 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 12573db, 40fb017
- Parents:
- 6aef742 (diff), 47b7006 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - Location:
- uspace/lib/c/arch
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/c/arch/abs32le/src/entry.c
r6aef742 r197ef43 37 37 { 38 38 __main(NULL); 39 __exit();40 39 } 41 40 -
uspace/lib/c/arch/abs32le/src/thread_entry.c
r6aef742 r197ef43 31 31 32 32 #include <unistd.h> 33 #include <thread.h>33 #include "../../../generic/private/thread.h" 34 34 35 35 void __thread_entry(void) -
uspace/lib/c/arch/amd64/src/entry.s
r6aef742 r197ef43 47 47 # Pass PCB pointer to __main (no operation) 48 48 call __main 49 50 call __exit -
uspace/lib/c/arch/arm32/src/entry.s
r6aef742 r197ef43 42 42 ldr r0, =ras_page 43 43 str r2, [r0] 44 44 45 45 # 46 46 # Create the first stack frame. … … 50 50 push {fp, ip, lr, pc} 51 51 sub fp, ip, #4 52 52 53 53 # Pass pcb_ptr to __main as the first argument (in r0) 54 54 mov r0, r1 55 55 bl __main 56 57 bl __exit58 56 59 57 .data … … 62 60 ras_page: 63 61 .long 0 64 -
uspace/lib/c/arch/ia32/src/entry.s
r6aef742 r197ef43 46 46 mov %ax, %fs 47 47 # Do not set %gs, it contains descriptor that can see TLS 48 48 49 49 # Detect the mechanism used for making syscalls 50 50 movl $(INTEL_CPUID_STANDARD), %eax … … 58 58 # Create the first stack frame. 59 59 # 60 pushl $0 60 pushl $0 61 61 movl %esp, %ebp 62 62 63 63 # Pass the PCB pointer to __main as the first argument 64 64 pushl %edi 65 65 call __main 66 67 call __exit -
uspace/lib/c/arch/ia64/src/entry.s
r6aef742 r197ef43 40 40 alloc loc0 = ar.pfs, 0, 1, 2, 0 41 41 movl gp = _gp 42 42 43 43 # Pass PCB pointer as the first argument to __main 44 44 mov out0 = r2 45 45 br.call.sptk.many b0 = __main 46 0:47 br.call.sptk.many b0 = __exit -
uspace/lib/c/arch/mips32/src/entry.s
r6aef742 r197ef43 56 56 jal __main 57 57 nop 58 59 jal __exit60 nop61 58 .end 62 59 -
uspace/lib/c/arch/ppc32/src/entry.s
r6aef742 r197ef43 44 44 stw %r3, 0(%r1) 45 45 stwu %r1, -16(%r1) 46 46 47 47 # Pass the PCB pointer to __main() as the first argument. 48 48 # The first argument is passed in r3. 49 49 mr %r3, %r6 50 50 bl __main 51 52 bl __exit -
uspace/lib/c/arch/sparc64/src/entry.s
r6aef742 r197ef43 45 45 flushw 46 46 add %g0, -0x7ff, %fp 47 47 48 48 # Pass pcb_ptr as the first argument to __main() 49 49 mov %i1, %o0 … … 51 51 call __main 52 52 or %l7, %lo(_gp), %l7 53 54 call __exit55 nop
Note:
See TracChangeset
for help on using the changeset viewer.