| OLD | NEW | 
|---|
| 1 /* Target-dependent code for GNU/Linux running on the Fujitsu FR-V, | 1 /* Target-dependent code for GNU/Linux running on the Fujitsu FR-V, | 
| 2    for GDB. | 2    for GDB. | 
| 3 | 3 | 
| 4    Copyright (C) 2004, 2006-2012 Free Software Foundation, Inc. | 4    Copyright (C) 2004, 2006-2012 Free Software Foundation, Inc. | 
| 5 | 5 | 
| 6    This file is part of GDB. | 6    This file is part of GDB. | 
| 7 | 7 | 
| 8    This program is free software; you can redistribute it and/or modify | 8    This program is free software; you can redistribute it and/or modify | 
| 9    it under the terms of the GNU General Public License as published by | 9    it under the terms of the GNU General Public License as published by | 
| 10    the Free Software Foundation; either version 3 of the License, or | 10    the Free Software Foundation; either version 3 of the License, or | 
| (...skipping 24 matching lines...) Expand all  Loading... | 
| 35 | 35 | 
| 36 /* Define the size (in bytes) of an FR-V instruction.  */ | 36 /* Define the size (in bytes) of an FR-V instruction.  */ | 
| 37 static const int frv_instr_size = 4; | 37 static const int frv_instr_size = 4; | 
| 38 | 38 | 
| 39 enum { | 39 enum { | 
| 40   NORMAL_SIGTRAMP = 1, | 40   NORMAL_SIGTRAMP = 1, | 
| 41   RT_SIGTRAMP = 2 | 41   RT_SIGTRAMP = 2 | 
| 42 }; | 42 }; | 
| 43 | 43 | 
| 44 static int | 44 static int | 
| 45 frv_linux_pc_in_sigtramp (struct gdbarch *gdbarch, CORE_ADDR pc, char *name) | 45 frv_linux_pc_in_sigtramp (struct gdbarch *gdbarch, CORE_ADDR pc, | 
|  | 46 »       »       »         const char *name) | 
| 46 { | 47 { | 
| 47   enum bfd_endian byte_order = gdbarch_byte_order (gdbarch); | 48   enum bfd_endian byte_order = gdbarch_byte_order (gdbarch); | 
| 48   char buf[frv_instr_size]; | 49   char buf[frv_instr_size]; | 
| 49   LONGEST instr; | 50   LONGEST instr; | 
| 50   int retval = 0; | 51   int retval = 0; | 
| 51 | 52 | 
| 52   if (target_read_memory (pc, buf, sizeof buf) != 0) | 53   if (target_read_memory (pc, buf, sizeof buf) != 0) | 
| 53     return 0; | 54     return 0; | 
| 54 | 55 | 
| 55   instr = extract_unsigned_integer (buf, sizeof buf, byte_order); | 56   instr = extract_unsigned_integer (buf, sizeof buf, byte_order); | 
| (...skipping 260 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 316   return trad_frame_get_register (cache, this_frame, regnum); | 317   return trad_frame_get_register (cache, this_frame, regnum); | 
| 317 } | 318 } | 
| 318 | 319 | 
| 319 static int | 320 static int | 
| 320 frv_linux_sigtramp_frame_sniffer (const struct frame_unwind *self, | 321 frv_linux_sigtramp_frame_sniffer (const struct frame_unwind *self, | 
| 321                                   struct frame_info *this_frame, | 322                                   struct frame_info *this_frame, | 
| 322                                   void **this_cache) | 323                                   void **this_cache) | 
| 323 { | 324 { | 
| 324   struct gdbarch *gdbarch = get_frame_arch (this_frame); | 325   struct gdbarch *gdbarch = get_frame_arch (this_frame); | 
| 325   CORE_ADDR pc = get_frame_pc (this_frame); | 326   CORE_ADDR pc = get_frame_pc (this_frame); | 
| 326   char *name; | 327   const char *name; | 
| 327 | 328 | 
| 328   find_pc_partial_function (pc, &name, NULL, NULL); | 329   find_pc_partial_function (pc, &name, NULL, NULL); | 
| 329   if (frv_linux_pc_in_sigtramp (gdbarch, pc, name)) | 330   if (frv_linux_pc_in_sigtramp (gdbarch, pc, name)) | 
| 330     return 1; | 331     return 1; | 
| 331 | 332 | 
| 332   return 0; | 333   return 0; | 
| 333 } | 334 } | 
| 334 | 335 | 
| 335 static const struct frame_unwind frv_linux_sigtramp_frame_unwind = | 336 static const struct frame_unwind frv_linux_sigtramp_frame_unwind = | 
| 336 { | 337 { | 
| (...skipping 190 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 527 | 528 | 
| 528 void | 529 void | 
| 529 _initialize_frv_linux_tdep (void) | 530 _initialize_frv_linux_tdep (void) | 
| 530 { | 531 { | 
| 531   gdbarch_register_osabi (bfd_arch_frv, 0, GDB_OSABI_LINUX, | 532   gdbarch_register_osabi (bfd_arch_frv, 0, GDB_OSABI_LINUX, | 
| 532                           frv_linux_init_abi); | 533                           frv_linux_init_abi); | 
| 533   gdbarch_register_osabi_sniffer (bfd_arch_frv, | 534   gdbarch_register_osabi_sniffer (bfd_arch_frv, | 
| 534                                   bfd_target_elf_flavour, | 535                                   bfd_target_elf_flavour, | 
| 535                                   frv_linux_elf_osabi_sniffer); | 536                                   frv_linux_elf_osabi_sniffer); | 
| 536 } | 537 } | 
| OLD | NEW | 
|---|