<?xml version="1.0"?>
<!-- Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.

     Copying and distribution of this file, with or without modification,
     are permitted in any medium without royalty provided the copyright
     notice and this notice are preserved.  -->

<!DOCTYPE feature SYSTEM "gdb-target.dtd">
<feature name="org.gnu.gdb.power.core-valgrind-s2">
  <reg name="r0s2" bitsize="64" type="uint64"/>
  <reg name="r1s2" bitsize="64" type="uint64"/>
  <reg name="r2s2" bitsize="64" type="uint64"/>
  <reg name="r3s2" bitsize="64" type="uint64"/>
  <reg name="r4s2" bitsize="64" type="uint64"/>
  <reg name="r5s2" bitsize="64" type="uint64"/>
  <reg name="r6s2" bitsize="64" type="uint64"/>
  <reg name="r7s2" bitsize="64" type="uint64"/>
  <reg name="r8s2" bitsize="64" type="uint64"/>
  <reg name="r9s2" bitsize="64" type="uint64"/>
  <reg name="r10s2" bitsize="64" type="uint64"/>
  <reg name="r11s2" bitsize="64" type="uint64"/>
  <reg name="r12s2" bitsize="64" type="uint64"/>
  <reg name="r13s2" bitsize="64" type="uint64"/>
  <reg name="r14s2" bitsize="64" type="uint64"/>
  <reg name="r15s2" bitsize="64" type="uint64"/>
  <reg name="r16s2" bitsize="64" type="uint64"/>
  <reg name="r17s2" bitsize="64" type="uint64"/>
  <reg name="r18s2" bitsize="64" type="uint64"/>
  <reg name="r19s2" bitsize="64" type="uint64"/>
  <reg name="r20s2" bitsize="64" type="uint64"/>
  <reg name="r21s2" bitsize="64" type="uint64"/>
  <reg name="r22s2" bitsize="64" type="uint64"/>
  <reg name="r23s2" bitsize="64" type="uint64"/>
  <reg name="r24s2" bitsize="64" type="uint64"/>
  <reg name="r25s2" bitsize="64" type="uint64"/>
  <reg name="r26s2" bitsize="64" type="uint64"/>
  <reg name="r27s2" bitsize="64" type="uint64"/>
  <reg name="r28s2" bitsize="64" type="uint64"/>
  <reg name="r29s2" bitsize="64" type="uint64"/>
  <reg name="r30s2" bitsize="64" type="uint64"/>
  <reg name="r31s2" bitsize="64" type="uint64"/>

<!--  When printing the non-shadow register names/contents, GDB prints the
      GPRs followed by the floating point registers then the pc, msr, ...
      registers. If the shadow GPRs and shadow pc/msr/cr... register
      definitions are all in this file, as is done with the non-shadow register
      definitions, the shadow register name print order changes to GPRs,
      followed by pc/msr/cr... then the floating point registers.  Note, the
      contents of the shadow registers still print in this same order as the
      non-shadow registers values resulting in the shadow register names and
      shadow register values not correctly aligning.

      In order to get, the shadow register names to print in the same order
      as the non-shadow register and correctly align with their contents,
      the following register definitions were moved to the file
      power64-core2-valgrind-s2.xml. The new file is included after the shadow
      floating point XML definition file. By doing this, we get GDB to print
      the shadow register names in the same order as the non-shadow register
      names and thus correctly align with the order that the shadow register
      contents are printed.   -->

<!--  <reg name="pcs2" bitsize="64" type="code_ptr"/>
  <reg name="msrs2" bitsize="64" type="uint64"/>
  <reg name="crs2" bitsize="32" type="uint32"/>
  <reg name="lrs2" bitsize="64" type="code_ptr"/>
  <reg name="ctrs2" bitsize="64" type="uint64"/>
  <reg name="xers2" bitsize="32" type="uint32"/>  -->
</feature>
