Changeset c1b455e in mainline


Ignore:
Timestamp:
2008-11-13T10:53:59Z (16 years ago)
Author:
Jiri Svoboda <jirik.svoboda@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
bfce7d9
Parents:
37e518b
Message:

Fix bug #67. It was obviously all my fault - I allocated r3 for pcb_ptr, which was alredy used by uarg.

Files:
3 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/ppc32/src/asm.S

    r37e518b rc1b455e  
    6767        mr sp, r4
    6868
    69         # %r3 is defined to hold pcb_ptr - set it to 0
    70 
    71         xor r3, r3, r3
     69        # %r6 is defined to hold pcb_ptr - set it to 0
     70
     71        xor r6, r6, r6
    7272       
    7373        # jump to userspace
  • uspace/lib/libc/arch/ppc32/src/entry.s

    r37e518b rc1b455e  
    3535## User-space task entry point
    3636#
    37 # r3 contains the PCB pointer
     37# r6 contains the PCB pointer
    3838#
    3939__entry:
    4040        # Pass the PCB pointer to __main() as the first argument.
    41         # Since the first argument is passed in r3, no operation is needed.
     41        # The first argument is passed in r3.
     42        mr %r3, %r6
    4243        bl __main
    4344
  • uspace/srv/loader/arch/ppc32/ppc32.s

    r37e518b rc1b455e  
    3737program_run:
    3838        mtctr %r3
    39         mr %r3, %r4     # Pass pcb to the entry point in %r3
     39        mr %r6, %r4     # Pass pcb to the entry point in %r6
    4040        bctr
Note: See TracChangeset for help on using the changeset viewer.