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-all mailing list