aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2019-03-13dwarf2: Align relocation within .debug_line sectionChristian Eggers2-3/+19
All relocations specify a byte address. As dwarf debug information is organized in octets, some relocations may not be aligned. While it might be possible to define special relocations that operate at an octet offset from their address, it's easier to ensure the relocations are aligned by padding with "nop" statements. In most dwarf sections this requirement is already fulfilled, only relocations for symbol address within the .debug_line section can be misaligned. * dwarf2dbg.c (out_set_addr): Align relocation within .debug_line.
2019-03-13dwarf2: Pad size of .debug_line section.Christian Eggers2-0/+15
As all dwarf debug information is organized in octets, the size of all dwarf sections must be aligned to OCTETS_PER_BYTE. Most DWARF sections meet this requirement, only the .debug_line section can reach an arbitrary octet size. In order to align the size to a multiple of OCTETS_PER_BYTE, the section is padded with "nop" statements at the end. * dwarf2dbg.c (out_debug_line): Pad size of .debug_line section.
2019-03-13dwarf2: Use octets for .debug_string offsetsChristian Eggers2-3/+7
Like other dwarf2 offsets, also the string offsets in the .debug_info section which points into the .debug_str section must be expressed in octets instead of bytes. * dwarf2dbg.c (out_debug_str): Use octets for .debug_string pointers.
2019-03-13dwarf2: Use octets for .debug_line prologueChristian Eggers2-2/+6
Like the u32 size field at the beginning of the section, also the prologue size must be expressed in octets. * dwarf2dbg.c (out_debug_line): Use octets for .debug_line prologue.
2019-03-13dwarf2: Use octets for dwarf2 headersChristian Eggers2-4/+9
The content of the dwarf2 sections .debug_line, .debug_aranges and .debug_info starts with an u32 containing the the size of the remaining data. According to the dwarf2 specification this value must be expressed in octets instead of bytes. * dwarf2dbg.c (out_debug_line): Use octets for dwarf2 headers. (out_debug_aranges, out_debug_info): Likewise.
2019-03-13Symbols with octets valueChristian Eggers3-1/+49
Up to now, all symbol values are in units of bytes, where a "byte" can consist of one or more octets (e.g. 8 bit or 16 bit). Allow to specfiy that the "unit" of a newly created symbol is octets (exactly 8 bit), instead of bytes. * symbols.h (symbol_temp_new_now_octets): Declare. (symbol_set_value_now_octets, symbol_octets_p): Declare. * symbols.c (struct symbol_flags): New member sy_octets. (symbol_temp_new_now_octets): New function. (resolve_symbol_value): Return octets instead of bytes if sy_octets is set. (symbol_set_value_now_octets): New function. (symbol_octets_p): New function.
2019-03-13dwarf2: Fix calculation of line info offsetChristian Eggers2-1/+5
The units of the value returned by "frag_now_fix()" and "size" do not match. "frag_now_fix()" returns bytes (can be 8, 16 or 32 bit), while "size" is octets (exactly 8 bit). * dwarf2dbg.c (dwarf2_emit_insn): Fix calculation of line info offset.
2019-03-13Automatic date update in version.inGDB Administrator1-1/+1
2019-03-12The NEWS file had two "New targets" sections for 8.3.John Baldwin2-5/+6
gdb/ChangeLog: * NEWS: Combine separate "New targets" sections for 8.3.
2019-03-12Support TLS variables on FreeBSD/powerpc.John Baldwin2-0/+42
Derive the pointer to the DTV array from the %r2 register on 32-bit powerpc and %r13 on 64-bit powerpc. gdb/ChangeLog: * ppc-fbsd-tdep.c (ppcfbsd_get_thread_local_address): New. (ppcfbsd_init_abi): Install gdbarch "fetch_tls_load_module_address" and "get_thread_local_address" methods.
2019-03-12Support TLS variables on FreeBSD/riscv.John Baldwin2-0/+34
Derive the pointer to the DTV array from the tp register. gdb/ChangeLog: * riscv-fbsd-tdep.c (riscv_fbsd_get_thread_local_address): New. (riscv_fbsd_init_abi): Install gdbarch "fetch_tls_load_module_address" and "get_thread_local_address" methods.
2019-03-12Support TLS variables on FreeBSD/i386.John Baldwin2-0/+36
Derive the pointer to the DTV array from the gs_base register. As with FreeBSD/amd64, gs_base is currently only available via the native target. gdb/ChangeLog: * i386-fbsd-tdep.c (i386fbsd_get_thread_local_address): New. (i386fbsd_init_abi): Install gdbarch "fetch_tls_load_module_address" and "get_thread_local_address" methods.
2019-03-12Support TLS variables on FreeBSD/amd64.John Baldwin2-0/+32
Use the fs_base register to fetch the address of a thread's tcb and calculate the address of the DTV array. This value is then passed to fbsd_get_thread_local_address to compute the final variable address. Note that fs_base is currently only available via the native target as core dumps on FreeBSD do not store the value of fs_base. gdb/ChangeLog: * amd64-fbsd-tdep.c (amd64fbsd_get_thread_local_address): New. (amd64fbsd_init_abi): Install gdbarch "fetch_tls_load_module_address" and "get_thread_local_address" methods.
2019-03-12Add a helper function to resolve TLS variable addresses for FreeBSD.John Baldwin3-0/+174
The fbsd_get_thread_local_address function accepts the base address of a thread's DTV array and the base address of an object file's link map and uses this to compute a TLS variable's address. FreeBSD architectures use an architecture-specific method to determine the address of the DTV array pointer and call this helper function to perform the rest of the address calculation. * fbsd-tdep.c (fbsd_pspace_data_handle): New variable. (struct fbsd_pspace_data): New type. (get_fbsd_pspace_data, fbsd_pspace_data_cleanup) (fbsd_read_integer_by_name, fbsd_fetch_rtld_offsets) (fbsd_get_tls_index, fbsd_get_thread_local_address): New function. (_initialize_fbsd_tdep): Initialize 'fbsd_pspace_data_handle'. * fbsd-tdep.c (fbsd_get_thread_local_address): New prototype.
2019-03-12Add a more general version of lookup_struct_elt_type.John Baldwin3-28/+72
lookup_struct_elt is a new function which returns a tuple of information about a component of a structure or union. The returned tuple contains a pointer to the struct field object for the component as well as a bit offset of that field within the structure. If the field names a field in an anonymous substructure, the offset is the "global" offset relative to the original structure type. If noerr is set, then the returned tuple will set the field pointer to NULL to indicate a missing component rather than throwing an error. lookup_struct_elt_type is now reimplemented in terms of this new function. It simply returns the type of the returned field. gdb/ChangeLog: * gdbtypes.c (lookup_struct_elt): New function. (lookup_struct_elt_type): Reimplement via lookup_struct_elt. * gdbtypes.h (struct struct_elt): New type. (lookup_struct_elt): New prototype.
2019-03-12Remove code disabled since at least 1999 from lookup_struct_elt_type.John Baldwin2-18/+8
Update the comment above the function to reflect the code removal and document the existing behavior. gdb/ChangeLog: * gdbtypes.c (lookup_struct_elt_type): Update comment and remove disabled code block.
2019-03-12Add a new gdbarch method to resolve the address of TLS variables.John Baldwin5-5/+68
Permit TLS variable addresses to be resolved purely by an ABI rather than requiring a target method. This doesn't try the target method if the ABI function is present (even if the ABI function fails) to simplify error handling. gdb/ChangeLog: * gdbarch.sh (get_thread_local_address): New method. * gdbarch.h, gdbarch.c: Regenerate. * target.c (target_translate_tls_address): Use gdbarch_get_thread_local_address if present instead of target::get_thread_local_address.
2019-03-12Update comment for target::get_thread_local_address.John Baldwin2-2/+6
There isn't an 'objfile' parameter, instead 'load_module_addr' is used to indicate the executable or shared library. Also, the function throws errors rather than returning error values. gdb/ChangeLog: * target.h (target::get_thread_local_address): Update comment.
2019-03-12Handle an edge case for minisym TLS variable lookups.John Baldwin2-0/+10
If a TLS variable is provided by a minisym from a separate debug file, the separate debug file is passed to gdbarch_fetch_tls_load_module_address. However, the object files stored in the shared object list are the original object files, not the separate debug object files. In this case, svr4_fetch_objfile_link_map was failing to find the link map entry since the debug object file is not in its internal list, only the original object file. gdb/ChangeLog: * solib-svr4.c (svr4_fetch_objfile_link_map): Look for objfile->separate_debug_objfile_backlink if not NULL.
2019-03-12Support fs_base and gs_base on FreeBSD/i386.John Baldwin6-12/+91
The i386 BSD native target uses the same ptrace operations (PT_[GS]ET[FG]SBASE) as the amd64 BSD native target to fetch and store the registers. The amd64 BSD native now uses 'tdep->fsbase_regnum' instead of hardcoding AMD64_FSBASE_REGNUM and AMD64_GSBASE_REGNUM to support 32-bit targets. In addition, the store operations explicitly zero the new register value before fetching it from the register cache to ensure 32-bit values are zero-extended. gdb/ChangeLog: * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers): Use tdep->fsbase_regnum instead of constants for fs_base and gs_base. (amd64bsd_store_inferior_registers): Likewise. * amd64-fbsd-nat.c (amd64_fbsd_nat_target::read_description): Enable segment base registers. * i386-bsd-nat.c (i386bsd_fetch_inferior_registers): Use PT_GETFSBASE and PT_GETGSBASE. (i386bsd_store_inferior_registers): Use PT_SETFSBASE and PT_SETGSBASE. * i386-fbsd-nat.c (i386_fbsd_nat_target::read_description): Enable segment base registers. * i386-fbsd-tdep.c (i386fbsd_core_read_description): Likewise.
2019-03-12Support the fs_base and gs_base registers on i386.John Baldwin18-31/+119
As on amd64, these registers hold the base address of the fs and gs segments, respectively. For i386 these two registers are 32 bits. gdb/ChangeLog: * amd64-fbsd-nat.c (amd64_fbsd_nat_target::read_description): Update calls to i386_target_description to add 'segments' parameter. * amd64-tdep.c (amd64_init_abi): Set tdep->fsbase_regnum. Don't add segment base registers. * arch/i386.c (i386_create_target_description): Add 'segments' parameter to enable segment base registers. * arch/i386.h (i386_create_target_description): Likewise. * features/i386/32bit-segments.xml: New file. * features/i386/32bit-segments.c: Generate. * i386-fbsd-nat.c (i386_fbsd_nat_target::read_description): Update call to i386_target_description to add 'segments' parameter. * i386-fbsd-tdep.c (i386fbsd_core_read_description): Likewise. * i386-go32-tdep.c (i386_go32_init_abi): Likewise. * i386-linux-tdep.c (i386_linux_read_description): Likewise. * i386-tdep.c (i386_validate_tdesc_p): Add segment base registers if feature is present. (i386_gdbarch_init): Pass I386_NUM_REGS to set_gdbarch_num_regs. Add 'segments' parameter to call to i386_target_description. (i386_target_description): Add 'segments' parameter to enable segment base registers. (_initialize_i386_tdep) [GDB_SELF_TEST]: Add 'segments' parameter to call to i386_target_description. * i386-tdep.h (struct gdbarch_tdep): Add 'fsbase_regnum'. (enum i386_regnum): Add I386_FSBASE_REGNUM and I386_GSBASE_REGNUM. Define I386_NUM_REGS. (i386_target_description): Add 'segments' parameter to enable segment base registers. gdb/gdbserver/ChangeLog: * linux-x86-tdesc.c (i386_linux_read_description): Update call to i386_create_target_description for 'segments' parameter. * lynx-i386-low.c (lynx_i386_arch_setup): Likewise. * nto-x86-low.c (nto_x86_arch_setup): Likewise. * win32-i386-low.c (i386_arch_setup): Likewise.
2019-03-12gdb/testsuite: Prepare for DejaGnu 1.6.2Andrew Burgess8-13/+12
Changes in DejaGnu 1.6.2 mean that our testsuite will no longer run. This is because of some confusion over how the gdb.exp file is handled. The gdb.exp file is really the tool init file, which is loaded from within the DejaGnu core, and it should not be loaded directly from any other file in the testsuite. DejaGnu tries to prevent the same library being loaded twice by remembering the names of library files as they are loaded. Until recently loading the tool init file in DejaGnu was very similar to loading a library file, as a result, loading the gdb.exp tool init file simply recorded 'gdb.exp' as having been loaded, future attempts to load 'gdb.exp' as a library would then be ignored (as the file was marked as already loaded). DejaGnu has now changed so that it supports having both a tool init file and a library with the same name, something that was not possible before. What this means however is that when the core loads the 'gdb.exp' tool init file it no longer marks the library 'gdb.exp' as having been loaded. When we then execute 'load_lib gdb.exp' we then try to reload the 'gdb.exp' file. Unfortunately our gdb.exp file can only be loaded once. It use of 'rename cd builtin_cd' means that a second attempt to load this file will fail. This was discussed on the DejaGnu list here: http://lists.gnu.org/archive/html/dejagnu/2019-03/msg00000.html and the suggested advice is that, unless we have some real requirement to load the tool init file twice, we should remove calls to 'load_lib gdb.exp' and rely on DejaGnu to load the file for us, which is what this patch does. I've tested with native X86-64/GNU Linux and see no regressions. gdb/testsuite/ChangeLog: * config/default.exp: Remove 'load_lib gdb.exp'. * config/monitor.exp: Likewise. * config/sid.exp: Likewise. * config/sim.exp: Likewise. * config/slite.exp: Likewise. * config/unix.exp: Likewise. * gdb.base/default.exp: Remove unhelpful comment.
2019-03-12Fix MinGW build with source-highlightEli Zaretskii2-0/+12
gdb/ChangeLog 2019-03-12 Eli Zaretskii <eliz@gnu.org> PR/24325 * source-cache.c: #undef open and close, to avoid unresolved externals during linking.
2019-03-12Make remote.c ptid constants "const"Tom Tromey2-9/+11
This changes magic_null_ptid, not_sent_ptid, and any_thread_ptid to be "const". This is a minor improvement that makes it so these can't be accidentally modified. Tested by rebuilding. I'm checking this in. gdb/ChangeLog 2019-03-12 Tom Tromey <tromey@adacore.com> * remote.c (magic_null_ptid, not_sent_ptid, any_thread_ptid): Now const. Add initializers. (_initialize_remote): Don't initialize ptid globals.
2019-03-12Fix test-cp-name-parser build, parser_fprintf undefinedPedro Alves2-1/+7
$ make test-cp-name-parser ... test-cp-name-parser.o: In function `yy_symbol_print(_IO_FILE*, int, YYSTYPE const*, cpname_state*)': build/gdb/cp-name-parser.c.tmp:1335: undefined reference to `parser_fprintf(_IO_FILE*, char const*, ...)' build/gdb/cp-name-parser.c.tmp:1339: undefined reference to `parser_fprintf(_IO_FILE*, char const*, ...)' test-cp-name-parser.o: In function `yy_stack_print(short*, short*)': build/gdb/cp-name-parser.c.tmp:1350: undefined reference to `parser_fprintf(_IO_FILE*, char const*, ...)' build/gdb/cp-name-parser.c.tmp:1354: undefined reference to `parser_fprintf(_IO_FILE*, char const*, ...)' build/gdb/cp-name-parser.c.tmp:1356: undefined reference to `parser_fprintf(_IO_FILE*, char const*, ...)' build/gdb/cp-name-parser.c.tmp:1376: more undefined references to `parser_fprintf(_IO_FILE*, char const*, ...)' follow collect2: error: ld returned 1 exit status make: *** [Makefile:1833: test-cp-name-parser] Error 1 gdb/ChangeLog: 2019-03-12 Pedro Alves <palves@redhat.com> * yy-remap.h [TEST_CPNAMES] (YYFPRINTF): Don't define.
2019-03-12Fix test-cp-name-parser build, unused variablePedro Alves2-1/+4
$ make test-cp-name-parser ... CXX test-cp-name-parser.o src/gdb/cp-name-parser.y: In function ‘int gdb::main(int, char**)’: src/gdb/cp-name-parser.y:2137:6: error: unused variable ‘len’ [-Werror=unused-variable] int len; ^~~ cc1plus: all warnings being treated as errors gdb/ChangeLog: 2019-03-12 Pedro Alves <palves@redhat.com> * cp-name-parser.y (main): Remove unused 'len' variable.
2019-03-12Make null_ptid and minus_one_ptid "const"Tom Tromey3-4/+9
This makes null_ptid and minus_one_ptid "const". I think this is an improvement because it means they can't be accidentally modified. 2019-03-12 Tom Tromey <tromey@adacore.com> * common/ptid.c (null_ptid, minus_one_ptid): Now const. * common/ptid.h (null_ptid, minus_one_ptid): Now const.
2019-03-12Change iterate_over_lwps to take a gdb::function_viewTom Tromey9-109/+143
This changes iterate_over_lwps to use a gdb::function_view. This was needed in order to make null_ptid and minus_one_ptid 'const'. gdb/ChangeLog 2019-03-12 Tom Tromey <tromey@adacore.com> * linux-nat.c (iterate_over_lwps): Update. (stop_callback): Remove parameter. (stop_wait_callback, detach_callback, resume_set_callback) (select_singlestep_lwp_callback, set_ignore_sigint) (status_callback, resumed_callback, resume_clear_callback) (kill_callback, kill_wait_callback, linux_nat_stop_lwp): Remove data parameter. (linux_nat_target::detach, linux_nat_target::resume) (linux_stop_and_wait_all_lwps, select_event_lwp) (linux_nat_filter_event, linux_nat_wait_1) (linux_nat_target::kill, linux_nat_target::stop) (linux_nat_target::stop): Update. (linux_nat_resume_callback): Change type. (resume_stopped_resumed_lwps, count_events_callback) (select_event_lwp_callback): Likewise. (linux_stop_lwp, linux_nat_stop_lwp): Update. * arm-linux-nat.c (struct update_registers_data): Remove. (update_registers_callback): Change type. (arm_linux_insert_hw_breakpoint1): Update. * nat/x86-linux-dregs.c (update_debug_registers_callback): Remove parameter. (x86_linux_dr_set_addr): Update. (x86_linux_dr_set_control): Update. * nat/linux-nat.h (iterate_over_lwps_ftype): Remove parameter. (iterate_over_lwps): Use gdb::function_view. * nat/aarch64-linux-hw-point.c (struct aarch64_dr_update_callback_param): Remove. (debug_reg_change_callback): Change type. (aarch64_notify_debug_reg_change): Update. * s390-linux-nat.c (s390_refresh_per_info): Update. gdb/gdbserver/ChangeLog 2019-03-12 Tom Tromey <tromey@adacore.com> * linux-low.c (iterate_over_lwps): Update.
2019-03-12Don't use bfd_get_file_size in objdumpAlan Modra10-107/+180
Compressed debug sections can have uncompressed sizes that exceed the original file size, so we can't use bfd_get_file_size. objdump also used bfd_get_file_size to limit reloc section size, but I believe the underlying bug causing the PR22508 out of bounds buffer access was that we had an integer overflow when calculating the reloc buffer size. I've fixed that instead in most of the backends, som and vms-alpha being the exceptions. SOM and vmd-alpha have rather more serious bugs in their slurp_relocs routines that would need fixing first if we want to fuss about making them safe against fuzzed object files. The patch also fixes a number of other potential overflows by using the bfd_alloc2/malloc2/zalloc2 memory allocation functions. bfd/ * coffcode.h (buy_and_read): Delete unnecessary forward decl. Add nmemb parameter. Use bfd_alloc2. (coff_slurp_line_table): Use bfd_alloc2. Update buy_and_read calls. Delete assertion. (coff_slurp_symbol_table): Use bfd_alloc2 and bfd_zalloc2. (coff_slurp_reloc_table): Use bfd_alloc2. Update buy_and_read calls. * coffgen.c (coff_get_reloc_upper_bound): Ensure size calculation doesn't overflow. * elf.c (bfd_section_from_shdr): Use bfd_zalloc2. Style fix. (assign_section_numbers): Style fix. (swap_out_syms): Use bfd_malloc2. (_bfd_elf_get_reloc_upper_bound): Ensure size calculation doesn't overflow. (_bfd_elf_make_empty_symbol): Style fix. (elfobj_grok_stapsdt_note_1): Formatting. * elfcode.h (elf_object_p): Use bfd_alloc2. (elf_write_relocs, elf_write_shdrs_and_ehdr): Likewise. (elf_slurp_symbol_table): Use bfd_zalloc2. (elf_slurp_reloc_table): Use bfd_alloc2. (_bfd_elf_bfd_from_remote_memory): Use bfd_malloc2. * elf64-sparc (elf64_sparc_get_reloc_upper_bound): Ensure size calculation doesn't overflow. (elf64_sparc_get_dynamic_reloc_upper_bound): Likewise. * mach-o.c (bfd_mach_o_get_reloc_upper_bound): Likewise. * pdp11.c (get_reloc_upper_bound): Copy aoutx.h version. binutils/ * objdump.c (load_specific_debug_section): Don't compare section size against file size. (dump_relocs_in_section): Don't compare reloc size against file size. Print "failed to read relocs" on bfd_get_reloc_upper_bound error.
2019-03-12Add missing changelogs for previous commits.Andreas Krebbel2-0/+14
2019-03-12S/390: arch13: Adjust to recent changesAndreas Krebbel3-53/+48
opcodes/ChangeLog: 2019-03-12 Andreas Krebbel <krebbel@linux.ibm.com> * s390-opc.txt: Rename selhhhr to selfhr. Remove optional operand from vstrszb, vstrszh, and vstrszf. gas/ChangeLog: 2019-03-12 Andreas Krebbel <krebbel@linux.ibm.com> * testsuite/gas/s390/zarch-arch13.s: Adjust testcase to optable changes. * testsuite/gas/s390/zarch-arch13.d: Likewise.
2019-03-12S/390: arch13: Add instruction descriptionsAndreas Krebbel1-101/+115
opcodes/ChangeLog: 2019-03-12 Andreas Krebbel <krebbel@linux.ibm.com> * s390-opc.txt: Add instruction descriptions.
2019-03-12Automatic date update in version.inGDB Administrator1-1/+1
2019-03-11Remove redundant assignment from dwarf2_find_containing_comp_unitTom Tromey2-1/+5
dwarf2_find_containing_comp_unit has two assignments to "this_cu" in quick succession, both of which are just: this_cu = dwarf2_per_objfile->all_comp_units[low]; ... with no intervening assignments. This patch removes the second assignment. I'm checking this in as obvious. Tested on x86-64 Fedora 29. gdb/ChangeLog 2019-03-11 Tom Tromey <tromey@adacore.com> * dwarf2read.c (dwarf2_find_containing_comp_unit): Remove redundant assignment to "this_cu".
2019-03-11Automatic date update in version.inGDB Administrator1-1/+1
2019-03-10Automatic date update in version.inGDB Administrator1-1/+1
2019-03-09Remove unnecessary cases from rank_one_type's switchSimon Marchi2-33/+4
We return INCOMPATIBLE_TYPE_BADNESS for all these type codes, so we might as well just let them go to the default case. Incidentally, this patch also makes this false positive error go away when compiling with gcc (Ubuntu 7.3.0-27ubuntu1~18.04) 7.3.0, default compiler on Ubuntu 18.04. CXX gdbtypes.o /home/smarchi/src/binutils-gdb/gdb/gdbtypes.c: In function ‘rank rank_one_type(type*, type*, value*)’: /home/smarchi/src/binutils-gdb/gdb/gdbtypes.c:4259:1: error: control reaches end of non-void function [-Werror=return-type] } ^ gdb/ChangeLog: * gdbtypes.c (rank_one_type): Remove unnecessary cases from switch.
2019-03-09Split rank_one_type_parm_set from rank_one_typeSimon Marchi2-10/+23
gdb/ChangeLog: * gdbtypes.c (rank_one_type_parm_set): New function extracted from... (rank_one_type): ... this.
2019-03-09Split rank_one_type_parm_struct from rank_one_typeSimon Marchi2-12/+27
gdb/ChangeLog: * gdbtypes.c (rank_one_type_parm_struct): New function extracted from... (rank_one_type): ... this.
2019-03-09Split rank_one_type_parm_complex from rank_one_typeSimon Marchi2-10/+23
gdb/ChangeLog: * gdbtypes.c (rank_one_type_parm_complex): New function extracted from... (rank_one_type): ... this.
2019-03-09Split rank_one_type_parm_float from rank_one_typeSimon Marchi2-19/+32
gdb/ChangeLog: * gdbtypes.c (rank_one_type_parm_float): New function extracted from... (rank_one_type): ... this.
2019-03-09Split rank_one_type_parm_bool from rank_one_typeSimon Marchi2-25/+38
gdb/ChangeLog: * gdbtypes.c (rank_one_type_parm_bool): New function extracted from... (rank_one_type): ... this.
2019-03-09Split rank_one_type_parm_range from rank_one_typeSimon Marchi2-14/+27
gdb/ChangeLog: * gdbtypes.c (rank_one_type_parm_range): New function extracted from... (rank_one_type): ... this.
2019-03-09Split rank_one_type_parm_char from rank_one_typeSimon Marchi2-41/+54
gdb/ChangeLog: * gdbtypes.c (rank_one_type_parm_char): New function extracted from... (rank_one_type): ... this.
2019-03-09Split rank_one_type_parm_enum from rank_one_typeSimon Marchi2-16/+29
gdb/ChangeLog: * gdbtypes.c (rank_one_type_parm_enum): New function extracted from... (rank_one_type): ... this.
2019-03-09Split rank_one_type_parm_int from rank_one_typeSimon Marchi2-83/+96
gdb/ChangeLog: * gdbtypes.c (rank_one_type_parm_int): New function extracted from... (rank_one_type): ... this.
2019-03-09Split rank_one_type_parm_func from rank_one_typeSimon Marchi2-7/+21
gdb/ChangeLog: * gdbtypes.c (rank_one_type_parm_func): New function extracted from... (rank_one_type): ... this.
2019-03-09Split rank_one_type_parm_array from rank_one_typeSimon Marchi2-9/+23
gdb/ChangeLog: * gdbtypes.c (rank_one_type_parm_array): New function extracted from... (rank_one_type): ... this.
2019-03-09Split rank_one_type_parm_ptr from rank_one_typeSimon Marchi2-63/+79
gdb/ChangeLog: * gdbtypes.c (rank_one_type_parm_ptr): New function extracted from... (rank_one_type): ... this.
2019-03-09Ensure 'help set/show print inferior-events' shows the example events.Philippe Waroquiers2-2/+7
Without this patch, the help stops after 'e.g.' : (gdb) apropos \(inferior\|thread\) event set print inferior-events -- Set printing of inferior events (e.g. set print thread-events -- Set printing of thread events (such as thread start and exit) show print inferior-events -- Show printing of inferior events (e.g. show print thread-events -- Show printing of thread events (such as thread start and exit) Using the same notation as for the thread evenets (i.e. 'such as') gives: (gdb) apropos \(inferior\|thread\) event set print inferior-events -- Set printing of inferior events (such as inferior start and exit) set print thread-events -- Set printing of thread events (such as thread start and exit) show print inferior-events -- Show printing of inferior events (such as inferior start and exit) show print thread-events -- Show printing of thread events (such as thread start and exit)