gdb/gdbserver/amd64-linux.c - gdb

Global variables defined

Functions defined

Source code

  1. /* *INDENT-OFF* */ /* THIS FILE IS GENERATED */

  2. /* A register protocol for GDB, the GNU debugger.
  3.    Copyright (C) 2001-2013 Free Software Foundation, Inc.

  4.    This file is part of GDB.

  5.    This program is free software; you can redistribute it and/or modify
  6.    it under the terms of the GNU General Public License as published by
  7.    the Free Software Foundation; either version 3 of the License, or
  8.    (at your option) any later version.

  9.    This program is distributed in the hope that it will be useful,
  10.    but WITHOUT ANY WARRANTY; without even the implied warranty of
  11.    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  12.    GNU General Public License for more details.

  13.    You should have received a copy of the GNU General Public License
  14.    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */

  15. /* This file was created with the aid of ``regdat.sh'' and ``./../regformats/i386/amd64-linux.dat''.  */

  16. #include "server.h"
  17. #include "regdef.h"
  18. #include "tdesc.h"

  19. static struct reg regs_amd64_linux[] = {
  20.   { "rax", 0, 64 },
  21.   { "rbx", 64, 64 },
  22.   { "rcx", 128, 64 },
  23.   { "rdx", 192, 64 },
  24.   { "rsi", 256, 64 },
  25.   { "rdi", 320, 64 },
  26.   { "rbp", 384, 64 },
  27.   { "rsp", 448, 64 },
  28.   { "r8", 512, 64 },
  29.   { "r9", 576, 64 },
  30.   { "r10", 640, 64 },
  31.   { "r11", 704, 64 },
  32.   { "r12", 768, 64 },
  33.   { "r13", 832, 64 },
  34.   { "r14", 896, 64 },
  35.   { "r15", 960, 64 },
  36.   { "rip", 1024, 64 },
  37.   { "eflags", 1088, 32 },
  38.   { "cs", 1120, 32 },
  39.   { "ss", 1152, 32 },
  40.   { "ds", 1184, 32 },
  41.   { "es", 1216, 32 },
  42.   { "fs", 1248, 32 },
  43.   { "gs", 1280, 32 },
  44.   { "st0", 1312, 80 },
  45.   { "st1", 1392, 80 },
  46.   { "st2", 1472, 80 },
  47.   { "st3", 1552, 80 },
  48.   { "st4", 1632, 80 },
  49.   { "st5", 1712, 80 },
  50.   { "st6", 1792, 80 },
  51.   { "st7", 1872, 80 },
  52.   { "fctrl", 1952, 32 },
  53.   { "fstat", 1984, 32 },
  54.   { "ftag", 2016, 32 },
  55.   { "fiseg", 2048, 32 },
  56.   { "fioff", 2080, 32 },
  57.   { "foseg", 2112, 32 },
  58.   { "fooff", 2144, 32 },
  59.   { "fop", 2176, 32 },
  60.   { "xmm0", 2208, 128 },
  61.   { "xmm1", 2336, 128 },
  62.   { "xmm2", 2464, 128 },
  63.   { "xmm3", 2592, 128 },
  64.   { "xmm4", 2720, 128 },
  65.   { "xmm5", 2848, 128 },
  66.   { "xmm6", 2976, 128 },
  67.   { "xmm7", 3104, 128 },
  68.   { "xmm8", 3232, 128 },
  69.   { "xmm9", 3360, 128 },
  70.   { "xmm10", 3488, 128 },
  71.   { "xmm11", 3616, 128 },
  72.   { "xmm12", 3744, 128 },
  73.   { "xmm13", 3872, 128 },
  74.   { "xmm14", 4000, 128 },
  75.   { "xmm15", 4128, 128 },
  76.   { "mxcsr", 4256, 32 },
  77.   { "orig_rax", 4288, 64 },
  78. };

  79. static const char *expedite_regs_amd64_linux[] = { "rbp", "rsp", "rip", 0 };
  80. static const char *xmltarget_amd64_linux = "amd64-linux.xml";

  81. const struct target_desc *tdesc_amd64_linux;

  82. void
  83. init_registers_amd64_linux (void)
  84. {
  85.   static struct target_desc tdesc_amd64_linux_s;
  86.   struct target_desc *result = &tdesc_amd64_linux_s;

  87.   result->reg_defs = regs_amd64_linux;
  88.   result->num_registers = sizeof (regs_amd64_linux) / sizeof (regs_amd64_linux[0]);
  89.   result->expedite_regs = expedite_regs_amd64_linux;
  90.   result->xmltarget = xmltarget_amd64_linux;

  91.   init_target_desc (result);

  92.   tdesc_amd64_linux = result;
  93. }