Changeset 29a9f62 in mainline for libc/arch/ia32


Ignore:
Timestamp:
2006-03-23T10:33:55Z (20 years ago)
Author:
Ondrej Palkovsky <ondrap@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
77bd004
Parents:
1cef26f
Message:

Added symbolic links 'libarch','libadt','libipc' into libc/include,
so that it can be easily used from anywhere.
Renamed thread_main to thread_main.
Allowed MIPS to compile with -O0.
Added non-preemptible threads support (not yet secured by futexes).
Added simple way to hold Thread Local Storage. Support for compiler
will be added later.
This update breaks IA64 uspace.

There is some forgotten spinlock_lock() in futexes, amd64 gets locked
in the secod uspace thread probably with preemption disabled.

Location:
libc/arch/ia32
Files:
3 edited
1 moved

Legend:

Unmodified
Added
Removed
  • libc/arch/ia32/Makefile.inc

    r1cef26f r29a9f62  
    3333TOOLCHAIN_DIR = /usr/local/i686/bin
    3434
    35 ARCH_SOURCES += arch/$(ARCH)/src/syscall.c
     35ARCH_SOURCES += arch/$(ARCH)/src/syscall.c \
     36                arch/$(ARCH)/src/psthread.S
    3637
    3738LFLAGS += -N
  • libc/arch/ia32/src/entry.s

    r1cef26f r29a9f62  
    4141        mov %ax, %es
    4242        mov %ax, %fs
    43         mov %ax, %gs
     43        # Do not set %gs, it contains descriptor that can see TLS
    4444       
     45        call __main     
    4546        call main
    4647        call __exit
  • libc/arch/ia32/src/thread_entry.s

    r1cef26f r29a9f62  
    3939        mov %dx, %es
    4040        mov %dx, %fs
    41         mov %dx, %gs
     41        # Do not set %gs, it contains descriptor that can see TLS
    4242
    4343        #
     
    4545        #
    4646        pushl %eax
    47         call thread_main
    48         addl $4, %esp
     47        call __thread_main
    4948       
    5049        #
Note: See TracChangeset for help on using the changeset viewer.