Changeset 4a8ed8a in mainline


Ignore:
Timestamp:
2006-03-09T12:38:00Z (19 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
0ef54d3
Parents:
fbd6f81
Message:

ia64 work.
Changes to make userspace work (uspace part).

Location:
libc/arch/ia64
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • libc/arch/ia64/_link.ld.in

    rfbd6f81 r4a8ed8a  
    44
    55SECTIONS {
    6         .text 0x00004000 : {
     6        .text 0x00010000 : {
    77                *(.text)
    88                *(.rodata .rodata.*)
  • libc/arch/ia64/src/entry.s

    rfbd6f81 r4a8ed8a  
    3737#
    3838__entry:
    39         br.call.sptk.many b0 = main
    40         br.call.sptk.many b0 = __exit
     39        mov r1 = __entry
     40        { br.call.sptk.many b0 = main }
     41        { br.call.sptk.many b0 = __exit }
    4142       
    4243.end __entry
  • libc/arch/ia64/src/syscall.c

    rfbd6f81 r4a8ed8a  
    2929#include <libc.h>
    3030
     31/**
     32 * Immediate operand for break instruction.
     33 * Be carefull about the value as Ski simulator
     34 * is somewhat sensitive to its value.
     35 *
     36 * 0 will be confused with Ski breakpoint.
     37 * And higher values will be confused with SSC's.
     38 */
     39#define SYSCALL_IMM     1
     40
    3141sysarg_t __syscall(const syscall_t id, const sysarg_t p1, const sysarg_t p2, const sysarg_t p3)
    3242{
     
    3848                "mov r16 = %3\n"
    3949                "mov r17 = %4\n"
    40                 "break 0\n"
     50                "break %5\n"
    4151                "mov %0 = r8\n"
    4252                : "=r" (ret)
    43                 : "r" (id), "r" (p1), "r" (p2), "r" (p3)
     53                : "r" (id), "r" (p1), "r" (p2), "r" (p3), "i" (SYSCALL_IMM)
    4454                : "r8", "r14", "r15", "r16"
    4555        );
Note: See TracChangeset for help on using the changeset viewer.