Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: src/sys/arch



Module Name:    src
Committed By:   fvdl
Date:           Wed Aug 20 21:48:53 UTC 2003

Modified Files:
        src/sys/arch/amd64/amd64: locore.S netbsd32_syscall.c spl.S syscall.c
            trap.c vector.S
        src/sys/arch/amd64/conf: files.amd64
        src/sys/arch/amd64/include: proc.h
        src/sys/arch/i386/i386: compat_13_machdep.c freebsd_machdep.c
            freebsd_syscall.c ibcs2_syscall.c linux_syscall.c locore.S
            mach_sigcode.S mach_syscall.c machdep.c process_machdep.c spl.S
            svr4_machdep.c svr4_sigcode.S svr4_syscall.c syscall.c trap.c
            vector.S
        src/sys/arch/i386/include: proc.h
        src/sys/arch/x86/include: intr.h
        src/sys/arch/x86/x86: intr.c

Log Message:
Pass pointers to frames from assembly, do not use the 'frame on stack
as argument passed by value' trick, as gcc 3.3.x makes (valid) assumptions
about the stack that will not be true. Costs 2 instructions per trap/syscall
on i386, 4 per interrupt for MP. One instruction per trap/syscall on amd64,
2 per interrupt for MP. I expect gcc 3.3.1 to make up for this by better
optimization (it'd better..)

While here, make amd64 compile again by using subr_mbr_disk.c


To generate a diff of this commit:
cvs rdiff -r1.5 -r1.6 src/sys/arch/amd64/amd64/locore.S
cvs rdiff -r1.2 -r1.3 src/sys/arch/amd64/amd64/netbsd32_syscall.c \
    src/sys/arch/amd64/amd64/syscall.c src/sys/arch/amd64/amd64/vector.S
cvs rdiff -r1.1 -r1.2 src/sys/arch/amd64/amd64/spl.S
cvs rdiff -r1.7 -r1.8 src/sys/arch/amd64/amd64/trap.c
cvs rdiff -r1.4 -r1.5 src/sys/arch/amd64/conf/files.amd64
cvs rdiff -r1.2 -r1.3 src/sys/arch/amd64/include/proc.h
cvs rdiff -r1.11 -r1.12 src/sys/arch/i386/i386/compat_13_machdep.c
cvs rdiff -r1.36 -r1.37 src/sys/arch/i386/i386/freebsd_machdep.c
cvs rdiff -r1.12 -r1.13 src/sys/arch/i386/i386/freebsd_syscall.c
cvs rdiff -r1.21 -r1.22 src/sys/arch/i386/i386/ibcs2_syscall.c \
    src/sys/arch/i386/i386/syscall.c
cvs rdiff -r1.24 -r1.25 src/sys/arch/i386/i386/linux_syscall.c
cvs rdiff -r1.14 -r1.15 src/sys/arch/i386/i386/locore.S
cvs rdiff -r1.4 -r1.5 src/sys/arch/i386/i386/mach_sigcode.S
cvs rdiff -r1.8 -r1.9 src/sys/arch/i386/i386/mach_syscall.c
cvs rdiff -r1.531 -r1.532 src/sys/arch/i386/i386/machdep.c
cvs rdiff -r1.48 -r1.49 src/sys/arch/i386/i386/process_machdep.c
cvs rdiff -r1.6 -r1.7 src/sys/arch/i386/i386/spl.S
cvs rdiff -r1.67 -r1.68 src/sys/arch/i386/i386/svr4_machdep.c
cvs rdiff -r1.5 -r1.6 src/sys/arch/i386/i386/svr4_sigcode.S
cvs rdiff -r1.20 -r1.21 src/sys/arch/i386/i386/svr4_syscall.c
cvs rdiff -r1.183 -r1.184 src/sys/arch/i386/i386/trap.c
cvs rdiff -r1.9 -r1.10 src/sys/arch/i386/i386/vector.S
cvs rdiff -r1.21 -r1.22 src/sys/arch/i386/include/proc.h
cvs rdiff -r1.5 -r1.6 src/sys/arch/x86/include/intr.h
cvs rdiff -r1.4 -r1.5 src/sys/arch/x86/x86/intr.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.




Home | Main Index | Thread Index | Old Index