Annotation of coherent/b/lib/libc/sys/i386/signal.s, revision 1.1

1.1     ! root        1: //////////
        !             2: / libc/sys/i386/signal.s
        !             3: / Copyright (c) Ciaran O'Donnell, Bievres (FRANCE), 1991.
        !             4: //////////
        !             5: 
        !             6: / #include <signal.h>
        !             7: 
        !             8:        .globl  sighold
        !             9:        .globl  sigrelse
        !            10:        .globl  sigignore
        !            11:        .globl  sigpause
        !            12:        .globl  sigset
        !            13:        .globl  signal
        !            14:        .globl  .cerror
        !            15: 
        !            16:        .set    SIGDEFER,       0x100
        !            17:        .set    SIGHOLD,        0x200
        !            18:        .set    SIGRELSE,       0x400
        !            19:        .set    SIGIGNORE,      0x800
        !            20:        .set    SIGPAUSE,       0x1000
        !            21:        .set    SIGDEFAULT,     0x8000
        !            22: 
        !            23: 
        !            24: sighold:
        !            25:        or      $SIGHOLD,4(%esp)
        !            26:        jmp     signal
        !            27: 
        !            28: sigrelse:
        !            29:        or      $SIGRELSE,4(%esp)
        !            30:        jmp     signal
        !            31: 
        !            32: sigignore:
        !            33:        or      $SIGIGNORE,4(%esp)
        !            34:        jmp     signal
        !            35: 
        !            36: sigpause:
        !            37:        or      $SIGPAUSE,4(%esp)
        !            38:        jmp     signal
        !            39: 
        !            40: /      sigset(sig, SIG_DFL)
        !            41: /      sigset(sig, SIG_IGN)
        !            42: /      sigset(sig, proc) 
        !            43: 
        !            44: sigset:
        !            45:        or      $SIGDEFER,4(%esp)
        !            46: 
        !            47: /      signal(sig, SIG_DFL)
        !            48: /      signal(sig, SIG_IGN)
        !            49: /      signal(sig, proc) 
        !            50: 
        !            51: signal:
        !            52:        movl    $sigreturn,%edx         / proc = &sigreturn
        !            53:        movl    $48, %eax
        !            54:        lcall   $0x7, $0                / if old_sys = sigsys(sig)<0
        !            55:        jc      .cerror                 /       return -1
        !            56:        orl     %eax,%eax
        !            57:        ret             
        !            58: 
        !            59: sigreturn:
        !            60:        addl    $4, %esp
        !            61:        lcall   $0xf, $0
        !            62: 
        !            63: / end of libc/sys/i386/signal.s

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.