cvs commit: src/sys/amd64/amd64 machdep.c src/sys/amd64/ia32
ia32_signal.c src/sys/amd64/linux32 linux32_sysvec.c
src/sys/i386/i386 machdep.c src/sys/i386/linux linux_sysvec.c
src/sys/i386/svr4 svr4_machdep.c src/sys/pc98/pc98 machdep.c
Konstantin Belousov
kib at FreeBSD.org
Thu Mar 13 10:54:38 UTC 2008
kib 2008-03-13 10:54:38 UTC
FreeBSD src repository
Modified files:
sys/amd64/amd64 machdep.c
sys/amd64/ia32 ia32_signal.c
sys/amd64/linux32 linux32_sysvec.c
sys/i386/i386 machdep.c
sys/i386/linux linux_sysvec.c
sys/i386/svr4 svr4_machdep.c
sys/pc98/pc98 machdep.c
Log:
Since version 4.3, gcc changed its behaviour concerning the i386/amd64
ABI and the direction flag, that is it now assumes that the direction
flag is cleared at the entry of a function and it doesn't clear once
more if needed. This new behaviour conforms to the i386/amd64 ABI.
Modify the signal handler frame setup code to clear the DF {e,r}flags
bit on the amd64/i386 for the signal handlers.
jhb@ noted that it might break old apps if they assumed DF == 1 would be
preserved in the signal handlers, but that such apps should be rare and
that older versions of gcc would not generate such apps.
Submitted by: Aurelien Jarno <aurelien aurel32 net>
PR: 121422
Reviewed by: jhb
MFC after: 2 weeks
Revision Changes Path
1.682 +1 -1 src/sys/amd64/amd64/machdep.c
1.16 +2 -2 src/sys/amd64/ia32/ia32_signal.c
1.33 +2 -2 src/sys/amd64/linux32/linux32_sysvec.c
1.666 +3 -3 src/sys/i386/i386/machdep.c
1.152 +2 -2 src/sys/i386/linux/linux_sysvec.c
1.39 +2 -2 src/sys/i386/svr4/svr4_machdep.c
1.402 +3 -3 src/sys/pc98/pc98/machdep.c
More information about the cvs-src
mailing list