Ignore:
Timestamp:
May 12, 2003, 12:48:43 PM (23 years ago)
Author:
zap
Message:

Started the work for re-designing the EMX C runtime library to not require
EMX.DLL. The new design is projected to be as follows:

  • all emx syscalls are replaced with the routines from the old sys.lib library which is now compilable in both a.out and OMF formats.
  • the sys.a library should be made replaceable and selectable by some gcc switch (e.g. -msyslib=emx would link with emx.a instead of sys.a which would give almost full backward compatibility with emx).
  • All C functions names were renamed to not contain the starting underscore (e.g. fopen and not _fopen). The underscored aliases will be added later with the c_alias library (which will be generated automatically from all public symbols of libc; any exported symbol that do not start with an underscore will be given an underscored alias unless such a symbol is already defined).

Also a lot of updates to the building system. It is now much faster (thanks
to Knut's suggestion of using ash's builtin echo).
Also re-wrote thunk1.asm and thunk2.asm to GAS format; this removes the need
for MASM and makes it possible to use 16-bit functions in a.out programs
without the need for EMX.DLL.
Also made a lot of small changes I don't remember now.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/emx/src/lib/misc/386/setjmp.s

    • Property cvs2svn:cvs-rev changed from 1.1 to 1.2
    r122 r123  
    3030        movl    0*4(%esp), %eax         /* return address */
    3131        movl    %eax, J_EIP(%edx)
    32         cmpb    $0, __osmode            /* OS/2? */
    33         je      1f                      /* No -> skip */
    3432        fs
    3533        movl    0, %eax                 /* Exception handler */
    3634        movl    %eax, J_XCP(%edx)
    37 1:      xorl    %eax, %eax
     35      xorl    %eax, %eax
    3836        EPILOGUE(setjmp)
    3937
     
    4442_longjmp:
    4543        PROFILE_NOFRAME
    46         cmpb    $0, __osmode            /* OS/2? */
    47         je      2f                      /* No -> skip */
    4844        movl    1*4(%esp), %eax         /* there */
    4945        pushl   J_XCP(%eax)
    5046        call    ___unwind2              /* unwind signal handlers */
    5147        addl    $4, %esp
    52 2:      movl    1*4(%esp), %edx         /* there */
     48      movl    1*4(%esp), %edx         /* there */
    5349        movl    2*4(%esp), %eax         /* n */
    5450        testl   %eax, %eax
Note: See TracChangeset for help on using the changeset viewer.