Date: Sun, 17 Dec 2006 06:48:40 +0000 (UTC) From: Kip Macy <kmacy@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/amd64/amd64 apic_vector.S exception.S local_apic.c trap.c src/sys/amd64/ia32 ia32_exception.S ia32_syscall.c src/sys/amd64/include apicvar.h src/sys/amd64/isa atpic.c atpic_vector.S Message-ID: <200612170648.kBH6meUJ027332@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
kmacy 2006-12-17 06:48:40 UTC FreeBSD src repository Modified files: sys/amd64/amd64 apic_vector.S exception.S local_apic.c trap.c sys/amd64/ia32 ia32_exception.S ia32_syscall.c sys/amd64/include apicvar.h sys/amd64/isa atpic.c atpic_vector.S Log: Newer versions of gcc don't support treating structures passed by value as if they were really passed by reference. Specifically, the dead stores elimination pass in the GCC 4.1 optimiser breaks the non-compliant behavior on which FreeBSD relied. This change brings FreeBSD up to date by switching trap frames to being explicitly passed by reference. Reviewed by: kan Tested by: kan Revision Changes Path 1.110 +2 -1 src/sys/amd64/amd64/apic_vector.S 1.128 +2 -0 src/sys/amd64/amd64/exception.S 1.34 +7 -7 src/sys/amd64/amd64/local_apic.c 1.313 +48 -50 src/sys/amd64/amd64/trap.c 1.5 +1 -0 src/sys/amd64/ia32/ia32_exception.S 1.17 +17 -17 src/sys/amd64/ia32/ia32_syscall.c 1.21 +2 -2 src/sys/amd64/include/apicvar.h 1.21 +2 -2 src/sys/amd64/isa/atpic.c 1.48 +1 -0 src/sys/amd64/isa/atpic_vector.S
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200612170648.kBH6meUJ027332>