some quesion about assembly when calling fork
loody
miloody at gmail.com
Wed Sep 16 10:23:40 EDT 2009
Dear all:
i copy the assembly code as below, I use uclibc.
if ((pid = fork()) < 0) {
84b4: ebffffb5 bl 8390 <.text-0x48>
84b8: e1a03000 mov r3, r0
84bc: e50b3010 str r3, [fp, #-16] xx1
84c0: e51b3010 ldr r3, [fp, #-16] xx2
84c4: e3530000 cmp r3, #0 ; 0x0
84c8: aa000002 bge 84d8 <main+0x3c>
printf("fork error");
84cc: e59f0040 ldr r0, [pc, #64] ; 8514 <.text
+0x13c>
84d0: ebffffba bl 83c0 <.text-0x18>
84d4: ea00000b b 8508 <main+0x6c>
why we store r3 and ld it back at the same place in xx1 and xx2.
does that have any relationship with fork?
appreciate your help,
miloody
More information about the linux-arm-kernel
mailing list