cvs commit: src/sys/i386/i386 apic_vector.s exception.s local_apic.c trap.c vm86.c vm86bios.s src/sys/i386/include apicvar.h src/sys/i386/isa atpic.c atpic_vector.s icu.h

Kip Macy kmacy at FreeBSD.org
Sat Dec 16 21:07:02 PST 2006


kmacy       2006-12-17 05:07:01 UTC

  FreeBSD src repository

  Modified files:
    sys/i386/i386        apic_vector.s exception.s local_apic.c 
                         trap.c vm86.c vm86bios.s 
    sys/i386/include     apicvar.h 
    sys/i386/isa         atpic.c atpic_vector.s icu.h 
  Log:
  Evidently FreeBSD has long relied on the compiler to treat structures
  passed by value (trap frames) as if they were in fact being passed by
  reference. For better or worse, this incorrect behaviour is no longer
  present in gcc 4.1. In this patch I convert all trapframe arguments to
  be explicitly pass by reference. I also remove vm86_initflags, pushing
  the very little work that it actually does up into vm86_prepcall.
  
  Reviewed by: kan
  Tested by: kan
  
  Revision  Changes    Path
  1.113     +4 -2      src/sys/i386/i386/apic_vector.s
  1.117     +7 -1      src/sys/i386/i386/exception.s
  1.36      +7 -7      src/sys/i386/i386/local_apic.c
  1.298     +61 -63    src/sys/i386/i386/trap.c
  1.62      +15 -22    src/sys/i386/i386/vm86.c
  1.32      +4 -2      src/sys/i386/i386/vm86bios.s
  1.21      +2 -2      src/sys/i386/include/apicvar.h
  1.27      +2 -2      src/sys/i386/isa/atpic.c
  1.50      +2 -1      src/sys/i386/isa/atpic_vector.s
  1.35      +1 -1      src/sys/i386/isa/icu.h


More information about the cvs-src mailing list