aboutsummaryrefslogtreecommitdiff
path: root/gnu/usr.bin/gdb/libgdb
Commit message (Collapse)AuthorAgeFilesLines
* Retire obsolete GDB 6.1.1Ed Maste2020-12-153-1898/+0
| | | | | | | | | | | | | | | | | | | | | GDB 6.1.1 was released in June 2004 and is long obsolete. It does not support all of the architectures that FreeBSD does, and imposes limitations on the FreeBSD kernel build, such as the continued use of DWARF2 debugging information. It was kept (in /usr/libexec/) only for use by crashinfo(8), which extracts some basic information from a kernel core dump after a crash. Crashinfo already prefers gdb from port/package if installed. Future work may add kernel debug support to LLDB or find another path for crashinfo's needs, but in any case we do not want to ship the excessively outdated GDB in FreeBSD 13. Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D27610 Notes: svn path=/head/; revision=368667
* Make _TO_CPUARCH macro for ARCH to CPUARCH conversionsWarner Losh2017-08-121-1/+1
| | | | | | | | | | | | Consolidate all the regular expressions to convert from MACHINE_ARCH to MACHINE_CPUARCH into a variable and use that variable in preference to the almost identical copies in the tree (which should have been identical). Differential Revision: https://reviews.freebsd.org/D11986 Notes: svn path=/head/; revision=322429
* Add full softfloat and hardfloat support for MIPS.Ruslan Bukin2016-10-311-1/+1
| | | | | | | | | | | | | | This adds new target architectures for hardfloat: mipselhf mipshf mips64elhf mips64hf. Tested in QEMU only. Sponsored by: DARPA, AFRL Sponsored by: HEIF5 Differential Revision: https://reviews.freebsd.org/D8376 Notes: svn path=/head/; revision=308130
* Create a new MACHINE_ARCH for Freescale PowerPC e500v2Justin Hibbits2016-10-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: The Freescale e500v2 PowerPC core does not use a standard FPU. Instead, it uses a Signal Processing Engine (SPE)--a DSP-style vector processor unit, which doubles as a FPU. The PowerPC SPE ABI is incompatible with the stock powerpc ABI, so a new MACHINE_ARCH was created to deal with this. Additionaly, the SPE opcodes overlap with Altivec, so these are mutually exclusive. Taking advantage of this fact, a new file, powerpc/booke/spe.c, was created with the same function set as in powerpc/powerpc/altivec.c, so it becomes effectively a drop-in replacement. setjmp/longjmp were modified to save the upper 32-bits of the now-64-bit GPRs (upper 32-bits are only accessible by the SPE). Note: This does _not_ support the SPE in the e500v1, as the e500v1 SPE does not support double-precision floating point. Also, without a new MACHINE_ARCH it would be impossible to provide binary packages which utilize the SPE. Additionally, no work has been done to support ports, work is needed for this. This also means no newer gcc can yet be used. However, gcc's powerpc support has been refactored which would make adding a powerpcspe-freebsd target very easy. Test Plan: This was lightly tested on a RouterBoard RB800 and an AmigaOne A1222 (P1022-based) board, compiled against the new ABI. Base system utilities (/bin/sh, /bin/ls, etc) still function appropriately, the system is able to boot multiuser. Reviewed By: bdrewery, imp Relnotes: yes Differential Revision: https://reviews.freebsd.org/D5683 Notes: svn path=/head/; revision=307761
* Revert r302670 and r302671 for now.Bryan Drewery2016-07-131-1/+1
| | | | | | | | MACHINE_CPUARCH smells like MACHINE except for arm64/aarch64 which has it backwards. Notes: svn path=/head/; revision=302690
* Create one list of replacements for MACHINE_CPUARCH as MACHINE_CPUARCH_SUB.Bryan Drewery2016-07-121-1/+1
| | | | | | | | | | | | | This also adds missing s/aarch64/arm64 to the sys.mk version and also adds back armv6hf for universe since it was added to the sys.mk version in r300438. MFC after: 3 days Sponsored by: EMC / Isilon Storage Division Differential Revision: https://reviews.freebsd.org/D7159 Notes: svn path=/head/; revision=302670
* Make armv6 hard float abi by default. Kill armv6hf.Warner Losh2016-05-181-1/+1
| | | | | | | | | | Allow CPUTYPE=soft to build the current soft-float abi libraries. Add UPDATING entry to announce this. Approved by: re@ (gjb) Notes: svn path=/head/; revision=300119
* DIRDEPS_BUILD: Regenerate without local dependencies.Bryan Drewery2016-02-242-1211/+19
| | | | | | | | | | | These are no longer needed after the recent 'beforebuild: depend' changes and hooking DIRDEPS_BUILD into a subset of FAST_DEPEND which supports skipping 'make depend'. Sponsored by: EMC / Isilon Storage Division Notes: svn path=/head/; revision=295989
* Add META_MODE support.Simon J. Gerraty2015-06-131-0/+1211
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | Off by default, build behaves normally. WITH_META_MODE we get auto objdir creation, the ability to start build from anywhere in the tree. Still need to add real targets under targets/ to build packages. Differential Revision: D2796 Reviewed by: brooks imp Notes: svn path=/head/; revision=284345
| * dirdeps.mk now sets DEP_RELDIRSimon J. Gerraty2015-06-081-2/+0
| | | | | | | | Notes: svn path=/projects/bmake/; revision=284172
| * Merge sync of headSimon J. Gerraty2015-05-271-0/+1
| |\ | |/ |/| | | Notes: svn path=/projects/bmake/; revision=283595
| * Merge headSimon J. Gerraty2014-04-281-1/+1
| |\ | |/ |/| | | Notes: svn path=/projects/bmake/; revision=265044
| * Updated dependenciesSimon J. Gerraty2013-10-131-8/+6
| | | | | | | | Notes: svn path=/projects/bmake/; revision=256419
| * Merge from headSimon J. Gerraty2013-09-052-35/+2
| |\ | | | | | | | | | Notes: svn path=/projects/bmake/; revision=255263
| * | Updated dependenciesSimon J. Gerraty2013-02-161-2/+0
| | | | | | | | | | | | Notes: svn path=/projects/bmake/; revision=246868
| * | Updated/new Makefile.dependSimon J. Gerraty2012-11-081-18/+32
| | | | | | | | | | | | Notes: svn path=/projects/bmake/; revision=242788
| * | Sync from headSimon J. Gerraty2012-11-041-1/+1
| |\ \ | | | | | | | | | | | | Notes: svn path=/projects/bmake/; revision=242545
| * | | Sync FreeBSD's bmake branch with Juniper's internal bmake branch.Marcel Moolenaar2012-08-221-0/+1201
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Requested by: Simon Gerraty <sjg@juniper.net> Notes: svn path=/projects/bmake/; revision=239572
* | | | Add a new ARM TARGET_ARCH, armv6hf. This is considered experimental.Andrew Turner2014-03-231-1/+1
| |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This targets the existing ARMv6 and ARMv7 SoCs that contain a VFP unit. This is an optional coprocessors may not be present in all devices, however it appears to be in all current SoCs we support. armv6hf targets the VFP variant of the ARM EABI and our copy of gcc is too old to support this. Because of this there are a number of WITH/WITHOUT options that are unsupported and must be left as the default value. The options and their required value are: * WITH_ARM_EABI * WITHOUT_GCC * WITHOUT_GNUCXX In addition, without an external toolchain, the following need to be left as their default: * WITH_CLANG * WITH_CLANG_IS_CC As there is a different method of passing float and double values to functions the ABI is incompatible with existing armv6 binaries. To use this a full rebuild of world is required. Because no floating point values are passed into the kernel an armv6 kernel with VFP enabled will work with an armv6hf userland and vice versa. Notes: svn path=/head/; revision=263660
* | | Fold in frame-unwind patchEd Maste2013-06-172-35/+2
| |/ |/| | | | | | | | | | | | | After moving to svn there's no need to avoid pulling files off a vendor branch. Notes: svn path=/head/; revision=251858
* | Merging of projects/armv6, part 3Oleksandr Tymoshenko2012-08-151-1/+1
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | r238211: Support TARGET_ARCH=armv6 and TARGET_ARCH=armv6eb This adds a new TARGET_ARCH for building on ARM processors that support the ARMv6K multiprocessor extensions. In particular, these processors have better support for TLS and mutex operations. This mostly touches a lot of Makefiles to extend existing patterns for inferring CPUARCH from ARCH. It also configures: * GCC to default to arm1176jz-s * GCC to predefine __FreeBSD_ARCH_armv6__ * gas to default to ARM_ARCH_V6K * uname -p to return 'armv6' * make so that MACHINE_ARCH defaults to 'armv6' It also changes a number of headers to use the compiler __ARM_ARCH_XXX__ macros to configure processor-specific support routines. Submitted by: Tim Kientzle <kientzle@freebsd.org> Notes: svn path=/head/; revision=239272
* Print key value, an index, otherwise we don't know which key is allocated.David Xu2012-05-211-1/+1
| | | | Notes: svn path=/head/; revision=235714
* Assume a big-endian default on MIPS and drop the "eb" suffix from MACHINE_ARCH.Juli Mallett2012-03-291-1/+1
| | | | | | | | | | | | | | | | | | This makes our naming scheme more closely match other systems and the expectations of much third-party software. MIPS builds which are little-endian should require and exhibit no changes. Big-endian TARGET_ARCHes must be changed: From: To: mipseb mips mipsn32eb mipsn32 mips64eb mips64 An entry has been added to UPDATING and some foot-shooting protection (complete with warnings which should become errors in the near future) to the top-level base system Makefile. Notes: svn path=/head/; revision=233644
* Print the raw value of si_code, that is esp. useful for undecoded values.Konstantin Belousov2011-03-261-3/+4
| | | | | | | | Sponsored by: The FreeBSD Foundation MFC after: 1 week Notes: svn path=/head/; revision=220043
* Merge binutils 2.17.50 to head. This brings a number of improvements toDimitry Andric2011-02-181-2/+6
|\ | | | | | | | | | | | | | | | | | | | | | | 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 Notes: svn path=/head/; revision=218822
| * Sync: merge r215464 through r215708 from ^/head.Dimitry Andric2010-11-221-3/+44
| |\ | | | | | | | | | Notes: svn path=/projects/binutils-2.17/; revision=215710
| * \ Sync: merge r215273 through r215318 from ^/head.Dimitry Andric2010-11-141-1/+1
| |\ \ | | | | | | | | | | | | Notes: svn path=/projects/binutils-2.17/; revision=215320
| * \ \ Sync: merge r214895 through r215140 from ^/head.Dimitry Andric2010-11-111-1/+9
| |\ \ \ | | | | | | | | | | | | | | | Notes: svn path=/projects/binutils-2.17/; revision=215143
| * | | | Fix warnings in fbsd-threads.c.Dimitry Andric2010-11-011-2/+6
| | | | | | | | | | | | | | | | | | | | Notes: svn path=/projects/binutils-2.17/; revision=214645
* | | | | Retire TARGET_ABI.Warner Losh2011-01-071-1/+1
| |_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implement MACHINE_ARCH=mips64e[lb] to build N64 images. This replaces MACHINE_ARCH=mipse[lb] TARGET_ABI=n64. MACHINE_ARCH=mipsn32e[lb] has been added, but currently requires WITHOUT_CDDL due to atomic issues in libzfs. I've not investigated this much, but implemented this to preserve as much of the TARGET_ABI functionality that I could. Since its presence doesn't affect the working cases, I've kept it in for now. Added mips64e[lb] to make universe, so more kernels build. And I think this (finally) closes the curtain on the tbemd tree. Notes: svn path=/head/; revision=217123
* | | | Add the ability for GDB to printout the thread name along with otherAttilio Rao2010-11-221-3/+44
| |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 Notes: svn path=/head/; revision=215679
* | | Add missing '/'.Yoshihiro Takahashi2010-11-141-1/+1
| | | | | | | | | | | | Notes: svn path=/head/; revision=215292
* | | We need to add powerpc64->powerpc translations (I knew I hated copyingWarner Losh2010-11-141-1/+1
| |/ |/| | | | | | | | | | | | | | | | | | | this code in the first place). Also MACHINE_ARCH powerpc is 32-bit, not MACHINE_CPUARCH == powerpc. Submitted by: nathanw Notes: svn path=/head/; revision=215276
* | Complete the integration of tbemd branch into head.Warner Losh2010-11-101-1/+9
|/ | | | | | | | | | | | | | | | | | | TARGET_BIG_ENDIAN is now completely dead, except where it was originally supposed to be used (internally in the toolchain building). TARGET_ARCH has changed in three cases: (1) Little endian mips has changed to mipsel. (2) Big endian mips has changed to mipseb. (3) Big endian arm has changed to armeb. Some additional changes are needed to make 'make universe' work on arm and mips after this change, so those are commented out for now. UPDATING information will be forthcoming. Any remaining rough edges will be hammered out in -current. Notes: svn path=/head/; revision=215082
* For "thread signal" command, print some information from siginfo whenKonstantin Belousov2010-07-041-0/+37
| | | | | | | | | | available. Suggested by: davidxu MFC after: 2 weeks Notes: svn path=/head/; revision=209690
* Widen psaddr_t from uintptr_t to uint64_t. This results in anMarcel Moolenaar2008-09-141-6/+7
| | | | | | | | | | | | | | | | | | ABI change on ILP32 platforms and relating to events. However it's harmless on little-endian ILP32 platforms in the sense that it doesn't cause breakages. Old ILP32 thread libraries write a 32-bit th_p and new thread libraries write a 64-bit th_p. But due to the fact that we have an unused 32-bit data field right after th_p and that field is always initialized to zero, little-endian ILP32 machines effectively have a valid 64-bit th_p by accident. Likewise for new thread libraries and old libthread_db: little endian ILP32 is unaffected. At this time we don't support big-endian threaded applications in GDB, so the breakage for the ILP32 case goes unnoticed. Notes: svn path=/head/; revision=183023
* - Add a global variable 'fbsdcoreops_suppress_target' that can be set toJohn Baldwin2008-04-291-2/+11
| | | | | | | | | | | | | | | | | force the FreeBSD multithreaded core target to not register any target for handling core dumps. This is analogous to the 'coreops_suppress_target' variable that GDB provides for suppressing the default core dump target. KGDB will use this new variable so it can provide its own core dump target that uses libkvm to work with vmcore files. - Adjust the long name and documentation of the FreeBSD multithreaded core dump target so it better matches what GDB's core dump target uses. MFC after: 1 week Reviewed by: davidxu, marcel Notes: svn path=/head/; revision=178666
* Avoid writing uninitialized stack data into a thread's MMX/SSE state byEd Maste2007-02-201-7/+12
| | | | | | | | | | | | | | | | first getting the current state with td_thr_getxmmregs_p. Without this, debugging a threaded app that uses libthr resulted in kernel panics or spurious SIGFPEs for me. (As of revision 1.6, sys/i386/i386/ptrace_machdep.c masks off the reserved bits in the mxcsr register, which prevents the kernel panics.) Architectures without PT_GETXMMREGS are not affected. MFC after: 1 week Notes: svn path=/head/; revision=166851
* Clean the product of patch(1).Ruslan Ermilov2006-04-101-0/+2
| | | | Notes: svn path=/head/; revision=157626
* Introduce a new proc service routine ps_linfo() to get LWP info.David Xu2006-02-071-0/+14
| | | | Notes: svn path=/head/; revision=155412
* 1. Eliminate compile warnings.David Xu2006-02-061-8/+60
| | | | | | | | 2. Add command 'thread signal' to print out current thread's signal mask and pending signals. Notes: svn path=/head/; revision=155379
* Add a kluge to allow kgdb(1) to inject its own frame sniffer in theMarcel Moolenaar2005-09-102-2/+33
| | | | | | | | | | | | | | | | | | | | list of frame sniffers so that trapframes can be detected. The kluge is needed because this version of gdb only supports appending a sniffer to the list of sniffers and the moment kgdb gets a chance to add its own frame sniffer, the target's default frame sniffer is already in the list. Since the default frame sniffer claims any frame thrown at it, kgdb's frame sniffer never gets to smell (a process much akin to tasting, but with lesser chance of hurling :-) This commit adds dummy frame sniffers that never claim a frame and as such don't fix anything yet. However, we now have frame sniffers and they are being called, so it's just a matter of adding meat to the bones and we'll be able to properly unwind across trapframes. MFC after: 1 week Notes: svn path=/head/; revision=149954
* Add support for XMM registers in GDB for x86 processors that supportDoug Rabson2005-05-311-11/+111
| | | | | | | | | | SSE (or its successors). Reviewed by: marcel, davidxu MFC After: 2 weeks Notes: svn path=/head/; revision=146818
* Don't try to enable event reporting for core file, it is not writable.David Xu2005-05-061-0/+2
| | | | Notes: svn path=/head/; revision=145960
* Report events from thread library.David Xu2005-04-121-16/+210
| | | | Notes: svn path=/head/; revision=144923
* Print thread address.David Xu2005-04-051-4/+4
| | | | | | | PR: threads/76821 Notes: svn path=/head/; revision=144664
* Use the system gnuregex library vs. building GNU regex bits into libibertyDavid E. O'Brien2005-02-141-0/+5
| | | | | | | | | | and using them. Reviewed by: marcel,imp Desired by: ache Notes: svn path=/head/; revision=141911
* When grabbing registers for an lwp, fake the inferior's pid using thePeter Edwards2005-01-111-2/+6
| | | | | | | | | | | | | | | | lwp ID before invoking the underlying target operation. For corefiles, we rely on gdb internals to do this, and it uses the pid as an index, rather than the lwpid, so previously, backtraces for multithreaded core files wasn't working correctly. For processes, we currently use ptrace directly, so fixup that code to also use the pid directly. Discussed With: marcel, davidxu MFC After: 4 days Notes: svn path=/head/; revision=140071
* Source changes to allow building a cross-debugger. Move solib.c andMarcel Moolenaar2004-12-051-3/+2
| | | | | | | | | | | solib-svr4.c to the MD makefiles because they are native files for alpha and sparc64, but target files for amd64, i386 and ia64. Note that kgdb(1) does not yet build as a cross-debugger due to libkvm. Notes: svn path=/head/; revision=138383
* Fix previous commit. GDB_CROSS_DEBUGGER needs to be defined for allMarcel Moolenaar2004-12-051-9/+1
| | | | | | | subdirectories. Notes: svn path=/head/; revision=138380