summaryrefslogtreecommitdiffstats
path: root/contrib/gdb
Commit message (Collapse)AuthorAgeFilesLines
* Fix KGDB backtrace on ARMwma2016-04-203-1/+9
| | | | | | | | | | | | | | | | | Modify trapframe decoding to properly analyze trapframe. Provide method for fixup_pc. It happens, that in some kernel functions, the GDB stack frame decoder cannot determine both func name and frame size. This is because these functions either contain invalid instruction, or their format does not match standard schema. Detect that scenarios and move PC accordingly to jump into known function schema, which GDB is able to parse. Obtained from: Semihalf Sponsored by: Juniper Networks Reviewed by: kib, zbb Differential Revision: https://reviews.freebsd.org/D5976
* Workaround KGDB issues on ARM by ignoring ARM EABI version higher than 5zbb2015-10-301-0/+15
| | | | | | | | | | | | | | | | To make KGDB working, it needs to understand kernel ELF image. By default it is compiled using EABI_5, which is not supported on the gdb-6. As a workaround, treat these images as EABI_2 because they share a lot of things in common. This workaround does not guarantee ALL funtionalities to work. Submitted by: Wojciech Macek <wma@semihalf.com> Reviewed by: jhb Obtained from: Semihalf Sponsored by: Juniper Networks Inc. Differential Revision: https://reviews.freebsd.org/D4012
* Update intree gdb/kgdb to handle 2 dwarf types:sbruno2015-05-177-4/+171
| | | | | | | | | | | | | | | DW_OP_GNU_uninit DW_OP_piece This squashes the warnings about type 0x93 not known in kgdb when opening a kernel crash dump. Upstream refs: https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commit;h=87808bd699575a850139a1f916512ab7a47fd496 https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commit;h=42be36b328ae784ae6981da7c7cab95b67ed7737 https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commit;h=23572ecadc89af384c1804ad7692f32c55fbfc80 Differential Revision: https://reviews.freebsd.org/D2534 Reviewed by: emaste, jhb, davide
* MFV r277658:pfg2015-01-241-3/+4
| | | | | | | | | | | | | | GDB: Replace use of sprintf. 2005-03-17 Mark Kettenis <kettenis@gnu.org> * corelow.c (get_core_register_section): Replace usage of sprintf and strcpy with xstrprintf and xstrdup. Sourceware commit: 3ecda4574edb38ad12fb491ccaf6d9b0caa3a07a CID: 1006819 MFC after: 4 days
* MFV: r277654pfg2015-01-241-0/+2
| | | | | | | | | | | | | | gdb: Add missing break statements 2004-05-21 Jim Blandy <jimb@redhat.com> * dwarf2expr.c (execute_stack_op): Add 'break' statements after cases for DW_OP_div and DW_OP_shr. (Thanks to Reva Cuthbertson.) Sourceware commit 99c87dab95747d380392a3698740507a21ad3236 CID: 1008254 MFC after: 4 days
* MFV r277607:pfg2015-01-232-4/+4
| | | | | | | | | | | | | | | GDB: Fix memset thinkos. 2005-03-25 Anthony Green <green@redhat.com> * remote.c (remote_store_registers): Fix memset usage. * std-regs.c (value_of_builtin_frame_reg): Ditto. (value_of_builtin_frame_fp_reg): Ditto. (value_of_builtin_frame_reg): Ditto. Reported by: Dirk Engling CID: 604160, 604161, 604162, 604163 MFC after: 5 days
* recognize the FreeBSD ARCH tag that is put on binaries like on armebjmg2014-02-121-4/+18
| | | | | | EABI binaries... MFC after: 1 week
* Use sysctl KERN_PROC_SIGTRAMP to retrieve the signal trampolinekib2013-11-261-12/+12
| | | | | | | | | | | | | | | | | location for the native amd64 ABI. This fixes unwinding over the signal frame after trampoline was moved to the shared page. The code would be more correct if using sysctl for the target process instead of inspecting gdb' own trampoline, but the current change is least intrusive and currently, we always initialize the native ABI sysvec first, which means that trampoline location for FreeBSD/amd64 ABI is relatively stable. Similar change will benefit libunwind. Analyzed by: avg Sponsored by: The FreeBSD Foundation MFC after: 1 week
* Fold in frame-unwind patchemaste2013-06-171-0/+4
| | | | | After moving to svn there's no need to avoid pulling files off a vendor branch.
* Include die tag in error messageemaste2013-06-171-2/+2
|
* Handle DW_TAG_unspecified_typeemaste2013-06-121-0/+26
| | | | | | | | | | 2011-11-14 Jim Ingham <jingham@apple.com> * dwarf2read.c (read_type_die): Handle DW_TAG_unspecified_type. (read_tag_unspecified_type): New function, add a type for the DW_TAG_unspecified_type die. Obtained from: Apple, gdb-1752
* Handle DW_TAG_rvalue_reference_typeemaste2013-06-121-0/+4
| | | | | | | | | | | | 2012-05-21 Jim Ingham <jingham@apple.com> * dwarf2read.c (process_die): Handle DW_TAG_rvalue_reference_type. (read_type_die): Ditto. (dwarf_tag_name): Ditto. * elf/dwarf2.h: Add DW_TAG_rvalue_reference_type. Obtained from: Apple, gdb-1820
* Fix the value of NT_FREEBSD_TAG to be the same as ABI_NOTRTYPE in lib/csu.andrew2013-04-181-0/+6
| | | | | Add NT_FREEBSD_NOINIT_TAG for the value of CRT_NOINIT_NOTETYPE. Check for both of these when detecting a FreeBSD binary in gdb.
* Extend GDB to check the value in the .note.tag section along with theandrew2013-02-041-0/+14
| | | | | | | | .note.ABI-tag section. This helps on ARM EABI where the OS/ABI field is zero. It would be better to use the NOTES program header however this would require a more invasive change.
* Clean some 'svn:executable' properties in the tree.pfg2013-01-2614-0/+0
| | | | | Submitted by: Christoph Mallon MFC after: 3 days
* Support restrict qualifier in dwarf debug infoemaste2012-12-196-28/+71
| | | | | | | | | | | | | | | | | | | | | | Newer clang/llvm emit DW_TAG_restrict_type, which wasn't handled by gdb. Import support from Apple's gdb-1822: | 2009-03-24 Jason Molenda (jmolenda@apple.com) | | * gdbtypes.c (make_cv_type): Rename this function to make_cvr_type to | also handle restrict qualifiers. | (check_typedef): Handle TYPE_RESTRICT. | * gdbtypes.h (TYPE_FLAG_RESTRICT, TYPE_RESTRICT): New. | * hpread.c (hpread_type_lookup): Update to use make_cvr_type. | * stabsread.c (read_type): Pass the restrict qualifiers along. | * parse.c (follow_types): Pass the restrict qualifiers along. | * dwarf2read.c (read_tag_const_type): Call make_cvr_type. | (read_tag_volatile_type): Same. | (read_tag_restrict_type): New function. | (read_type_die): Handle DW_TAG_restrict_type. Obtained from: Apple Sponsored by: ADARA Networks
* Do not unwind past a zero PC frame.emaste2012-11-131-0/+17
| | | | | | | | | | | | | | | | | This improves GDB usability when debugging code compiled with optimization. Upstream GDB revision f0031b6d3ae9b164b3747986ab898190bd4dcf8c (prior to GDB's switch to GPLv3), with frame_debug_got_null_frame expanded inline. | 2004-12-12 Andrew Cagney <cagney@gnu.org> | | * frame.c (get_prev_frame): When unwinding normal frames, check | that the PC isn't zero. Sponsored by: ADARA Networks MFC After: 1 month
* Set optimized_out instead of reporting an error.emaste2012-11-1311-77/+95
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This provides a better display when debugging code compiled with optimization on. GDB git revision e8395b4efd184f745070afb953f451f99e922be7 (prior to GDB's switch to GPLv3), modified for the interfaces provided by GDB 6.1.1. 2005-02-28 Daniel Jacobowitz <dan@codesourcery.com> * dwarf2loc.c (loclist_read_variable): Set optimized_out instead of reporting an error. * valprint.c (value_check_printable): New function. (common_val_print): New function. Use value_check_printable. (value_print): Use value_check_printable. * value.h (common_val_print): Add prototype. * c-valprint.c (c_val_print): Use common_val_print. * cp-valprint.c (cp_print_value_fields): Likewise. (cp_print_hpacc_virtual_table_entries): Likewise. * f-valprint.c (f_val_print): Likewise. * jv-valprint.c (java_value_print, java_print_value_fields): Likewise. * scm-valprint.c (scm_value_print): Likewise. * stack.c (print_frame_args): Likewise. * varobj.c (c_value_of_variable): Likewise. * p-valprint.c (pascal_val_print, pascal_value_print): Likewise. (pascal_object_print_value_fields): Likewise. Update call to pascal_object_print_static_field. (pascal_object_print_static_field): Remove TYPE argument. Use common_val_print. Sponsored by: ADARA Networks MFC after: 1 month
* Fix "Corrupted DWARF expression" from (k)gdb.emaste2012-09-061-2/+2
| | | | | | | Google turned up Debian bug 405116, which describes the problem in sufficient detail to identify the overflowing variables. MFC after: 1 week
* Teach gdb about the DW_FORM_flag_present dwarf attribute, so it doesn'tdim2012-08-291-0/+6
| | | | | | | error out on files that contain it. (This attribute can be emitted by newer versions of clang.) MFC after: 2 weeks
* fix ABI detection logic: for 64-bit elf objects set default ABI to n64.gonzo2012-03-191-0/+7
|
* Pull in a fix (still under GPLv2) for a double free in gdb, leading todim2012-03-131-0/+7
| | | | | | | | an assert, which can occur if you repeatedly dlopen() and dlclose() a .so file in a tight loop. This was reported on freebsd-current@ by Alexandre Martins, with a sample to reproduce the behaviour. Obtained from: http://sourceware.org/git/?p=gdb.git;a=commit;h=a6f2cbb341520f8e100f4b8305979dd6207a79e8
* Note two shortcomings of GDB on MIPS that should be addressed.jmallett2012-03-131-0/+2
|
* Implement functions necessary for compiling fbsd-threads.c.marius2011-08-062-0/+61
| | | | | | Reviewed by: marcel Approved by: re (kib) MFC after: 1 week
* - Check on target wordsize instead of compile time define if we build onandreast2011-06-141-61/+319
| | | | | | | | | 64-bit PowerPC or 32-bit PowerPC. - Make gdb work on powerpc64, the code for this is obtained from ppc-linux-tdep.c. - Remove non-elf core read functionality. Implement core read functionality similar like other FreeBSD targets. - Set long double limitations.
* Remove stray semicolon. This fix appears in later upstream gdb versions.emaste2011-03-091-1/+1
| | | | Submitted by: eadler
* Merge binutils 2.17.50 to head. This brings a number of improvements todim2011-02-1810-72/+101
|\ | | | | | | | | | | | | | | | | x86 CPU support, better support for powerpc64, some new directives, and many other things. Bump __FreeBSD_version, and add a note to UPDATING. Thanks to the many people that have helped to test this. Obtained from: projects/binutils-2.17
| * Sync: merge r215464 through r215708 from ^/head.dim2010-11-221-0/+5
| |\ | |/ |/|
| * Sync: merge r214895 through r215140 from ^/head.dim2010-11-113-9/+14
| |\
| * \ Sync: merge r214649 through r214894 from ^/head.dim2010-11-062-1/+11
| |\ \
| * | | Fix gdb compilation with new binutils:dim2010-10-2210-34/+34
| | | | | | | | | | | | | | | | | | | | bfd_get_section_size_before_reloc() has been renamed to bfd_get_section_size().
* | | | Add the ability for GDB to printout the thread name along with otherattilio2010-11-221-0/+5
| |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | thread specific informations. In order to do that, and in order to avoid KBI breakage with existing infrastructure the following semantic is implemented: - For live programs, a new member to the PT_LWPINFO is added (pl_tdname) - For cores, a new ELF note is added (NT_THRMISC) that can be used for storing thread specific, miscellaneous, informations. Right now it is just popluated with a thread name. GDB, then, retrieves the correct informations from the corefile via the BFD interface, as it groks the ELF notes and create appropriate pseudo-sections. Sponsored by: Sandvine Incorporated Tested by: gianni Discussed with: dim, kan, kib MFC after: 2 weeks
* | | Change register numbers according to current struct reg andgonzo2010-11-072-3/+3
| | | | | | | | | | | | struct fpreg in src/sys/mips/include/reg.h
* | | Calculate offset from frame top for registers saved on a stack frame.gonzo2010-11-071-6/+11
| |/ |/|
* | - Add ELF core for FreeBSD/mipsgonzo2010-11-021-0/+10
| | | | | | | | - Register all known cores in init function
* | Fix reading of .debug_line on MIPS64, big-endian:gonzo2010-11-021-1/+1
|/ | | | | | | | read_initial_length detects pointer size by checking first 4 bytes of .debug_line and stores it in struct comp_unit_head * passed to it as second argument. By passing NULL to a read_initial_length we ignore actual pointer size (8 bytes) and use default (4 bytes) which results in wrong offsets of header fields.
* Teach our toolchain how to generate 64-bit PowerPC binaries. This fixesnwhitehorn2010-07-102-7/+13
| | | | | | | | a variety of bugs in binutils related to handling of 64-bit PPC ELF, provides a GCC configuration for 64-bit PowerPC on FreeBSD, and associated build systems tweaks. Obtained from: projects/ppc64
* Adds the missing mips gdb files that Irrs2010-02-215-0/+818
| | | | | | | foobar'd on my last commit.. Sorry about that JC.. my fault. Obtained from: JC
* These contain JC's patch to get gdb sort of workingrrs2010-02-201-0/+11
| | | | | | | | | | | | on mips. Its not fully done yet but its a start. Obtained from: JC - c.jayachandran@gmail.com M gnu/usr.bin/gdb/kgdb/trgt_mips.c M gnu/usr.bin/gdb/arch/mips/init.c M gnu/usr.bin/gdb/arch/mips/Makefile M gnu/usr.bin/Makefile M contrib/gdb/gdb/mips-tdep.h
* gdb: make 'thread apply all bt' always work on all threadsavg2009-06-121-2/+26
| | | | | | | | | | even if some appear to have (partially) corrupted stack traces. E.g. kernel crashdumps typically have stack weirdness at userland-kernel boundary. Obtained from: vendor/upstream (CVS rev 1.118 of stack.c) Reviewed by: emaste Approved by: jhb
* - Use gdb-* glob instead of gdb-6.1.1, to simplify future imports.emaste2009-04-071-54/+65
| | | | | - Add a few entries for additional files from later gdb releases that should also be ignored.
* gdb: Remove arm_pc_is_thumb_dummy() and related code.raj2008-11-171-36/+1
| | | | | | This is basically an import of the following gdb change: http://sourceware.org/ml/gdb-cvs/2005-03/msg00143.html (which in effect fixes problems with gracefully closing down the non-Thumb program being debugged).
* This commit was generated by cvs2svn to compensate for changes in r173619,obrien2007-11-141-1/+1
|\ | | | | | | which included commits to RCS files with non-trunk default branches.
| * Bring in FSF revision 1.9 (Change type of ps_strings from int to u_long).obrien2007-11-141-1/+1
| | | | | | | | | | | | | | This fixes a situation where GDB gives incorrect backtraces when a signal handler is in the call chain. Submitted by: Stu Grossman <grossman@juniper.net>
* | This commit was generated by cvs2svn to compensate for changes in r169185,marcel2007-05-011-0/+12
|\ \ | |/ | | | | which included commits to RCS files with non-trunk default branches.
| * Define supply_gregset() and supply_fpregset(). They are neededmarcel2007-05-011-0/+12
| | | | | | | | by our threading support.
* | This commit was generated by cvs2svn to compensate for changes in r161561,marcel2006-08-246-0/+505
|\ \ | |/ | | | | which included commits to RCS files with non-trunk default branches.
| * Add support for PowerPC. These files are added onto the FSF branchmarcel2006-08-246-0/+505
| | | | | | | | to avoid future conflicts.
* | Update for PowerPC support. We need to keep rs6000 related files.marcel2006-08-231-2/+0
| |
* | This commit was generated by cvs2svn to compensate for changes in r161537,marcel2006-08-2311-0/+4554
|\ \ | |/ | | | | which included commits to RCS files with non-trunk default branches.
OpenPOWER on IntegriCloud