Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 1 Dec 2004 06:40:35 +0000 (UTC)
From:      Marcel Moolenaar <marcel@FreeBSD.org>
To:        src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   cvs commit: src/sys/alpha/alpha gdb_machdep.c src/sys/alpha/include gdb_machdep.h src/sys/amd64/amd64 gdb_machdep.c src/sys/amd64/include gdb_machdep.h src/sys/gdb gdb_main.c...
Message-ID:  <200412010640.iB16eZsA059383@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
marcel      2004-12-01 06:40:35 UTC

  FreeBSD src repository

  Modified files:
    sys/alpha/alpha      gdb_machdep.c 
    sys/alpha/include    gdb_machdep.h 
    sys/amd64/amd64      gdb_machdep.c 
    sys/amd64/include    gdb_machdep.h 
    sys/gdb              gdb_main.c 
    sys/i386/i386        gdb_machdep.c 
    sys/i386/include     gdb_machdep.h 
    sys/ia64/ia64        gdb_machdep.c 
    sys/ia64/include     gdb_machdep.h 
    sys/sparc64/include  gdb_machdep.h 
    sys/sparc64/sparc64  gdb_machdep.c 
  Log:
  Change gdb_cpu_setreg() to not take the value to which to set the
  specified register, but a pointer to the in-memory representation of
  that value. The reason for this is twofold:
  1. Not all registers can be represented by a register_t. In particular
     FP registers fall in that category. Passing the new register value
     by reference instead of by value makes this point moot.
  2. When we receive a G or P packet, both are for writing a register,
     the packet will have the register value in target-byte order and
     in the memory representation (modulo the fact that bytes are sent
     as 2 printable hexadecimal numbers of course). We only need to
     decode the packet to have a pointer to the register value.
  
  This change fixes the bug of extracting the register value of the P
  packet as a hexadecimal number instead of as a bit array. The quick
  (and dirty) fix to bswap the register value in gdb_cpu_setreg() as
  it has been added on i386 and amd64 can therefore be removed and has
  in fact been that.
  
  Tested on: alpha, amd64, i386, ia64, sparc64
  
  Revision  Changes    Path
  1.2       +1 -1      src/sys/alpha/alpha/gdb_machdep.c
  1.2       +1 -1      src/sys/alpha/include/gdb_machdep.h
  1.3       +3 -4      src/sys/amd64/amd64/gdb_machdep.c
  1.2       +1 -1      src/sys/amd64/include/gdb_machdep.h
  1.3       +24 -10    src/sys/gdb/gdb_main.c
  1.3       +3 -4      src/sys/i386/i386/gdb_machdep.c
  1.2       +1 -1      src/sys/i386/include/gdb_machdep.h
  1.3       +1 -1      src/sys/ia64/ia64/gdb_machdep.c
  1.3       +1 -1      src/sys/ia64/include/gdb_machdep.h
  1.2       +1 -1      src/sys/sparc64/include/gdb_machdep.h
  1.2       +1 -1      src/sys/sparc64/sparc64/gdb_machdep.c



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200412010640.iB16eZsA059383>