aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2015-06-15Fix a segmentation fault triggered when trying to handle an unresolved PE ↵Nick Clifton3-2/+27
symbol with a very long name. PR ld/18466 * emultempl/pe.em (pe_find_data_imports): Generate an error if a symbol name is too long to handle. * emultempl/pep.em (pep_find_data_imports): Likewise.
2015-06-15gas: Don't use frag_align but use plain padding to align .debug_aranges.Mark Wielaard5-2/+55
out_debug_aranges uses frag_align to make sure the addresses start out aligned. Using frag_align will call frag_var[_init], which will end up calling TC_FRAG_INIT. On arm and aarch64 TC_FRAG_INIT will generate a $d mapping symbol for the .debug_aranges to show that at that point a sequence of data items starts. Such a symbol pointing into a non-allocated debug section will confuse eu-strip -g. And it seems inefficient and wrong in general to have additional mapping symbols for debug sections, which won't contain actual code in the first place. Just keep track of the aranges header size and use plain padding to align the addresses which avoids generating any mapping symbols on aarch64 and arm. Includes a testcase for aarch64 that PASS with this patch and shows the extra $d mapping symbol in .debug_aranges before. gas/ChangeLog * dwarf2dbg.c (out_header): Document EXPR->X_add_number value, out_debug_aranges depends on it. (out_debug_aranges): Track size of header to properly pad header for address alignment. gas/testsuite/ChangeLog * gas/aarch64/dwarf.d: New. * gas/aarch64/dwarf.s: New.
2015-06-15DJGPP port of binutils broken due to 64 bit cygwin fixAlan Modra2-11/+17
* cofflink.c (_bfd_coff_generic_relocate_section): Revert 2014-03-26 change. Call _bfd_clear_contents for relocs against local and global symbols defined in discarded input sections.
2015-06-15Automatic date update in version.inGDB Administrator1-1/+1
2015-06-14Automatic date update in version.inGDB Administrator1-1/+1
2015-06-13gdb: Rework command completion on 'tui reg'.Andrew Burgess7-101/+232
We previously specified a few known register groups for the 'tui reg' command. Other register groups could be accessed, but only by using the 'tui reg next' command and cycling through all the groups. This commit removes the hard coded sub-commands of 'tui reg' and instead adds dynamic completion of sub-commands based on the architecturally defined register groups, giving immediate access to all available register groups. There is still the 'next' and 'prev' commands for cycling through the register groups if that's wanted. The new code maintains the ability to only enter partial names for register groups, which is something we got for free when using the standard sub-command mechanism. The register (and register group) completer has been changed to use get_current_arch rather than using the architecture of the currently selected frame. When the target is running, this is equivalent, however, when the target is not running, using get_current_arch will provide results from the default architecture. gdb/ChangeLog: * completer.c: Add arch-utils.h include. (enum reg_completer_targets): New enum. (reg_or_group_completer_1): New function containing old reg_or_group_completer, add and use new parameter to control what is completed on. Use get_current_arch rather than architecture of currently selected frame. (reg_or_group_completer): Call new reg_or_group_completer_1. (reggroup_completer): Call new reg_or_group_completer_1. * completer.h (reggroup_completer): Add declaration. * tui/tui-regs.c: Add 'completer.h' include. (tui_reg_next_command): Renamed to... (tui_reg_next): ...this. Adjust parameters and return rather than display new group. (tui_reg_prev_command): Renamed to... (tui_reg_prev): ...this. Adjust parameters and return rather than display new group. (tui_reg_float_command): Delete. (tui_reg_general_command): Delete. (tui_reg_system_command): Delete. (tui_reg_command): Rewrite to perform switching of register group. Add header comment. (tuireglist): Remove. (tui_reggroup_completer): New function. (_initialize_tui_regs): Remove 'tui reg' sub-commands, update creation of 'tui reg' command. * NEWS: Add comment about 'tui reg' changes. gdb/doc/ChangeLog: * gdb.texinfo (TUI Commands): Bring all 'tui reg' commands into a single table entry.
2015-06-13Automatic date update in version.inGDB Administrator1-1/+1
2015-06-12[gold][aarch64] Fix erratum 835769.Han Shen3-44/+285
gold/ChangeLog: * aarch64.cc (AArch64_insn_utilities::BYTES_PER_INSN): Move defintion outside class definition. (AArch64_insn_utilities::AARCH64_ZR): New static constant. (AArch64_insn_utilities::aarch64_op31): New member. (AArch64_insn_utilities::aarch64_ra): New member. (AArch64_insn_utilities::aarch64_mac): New member. (AArch64_insn_utilities::aarch64_mlxl): New member. (ST_E_835769): New global enum member. (Stub_table::relocate_stubs): Add 835769 handler. (Stub_template_repertoire::Stub_template_repertoire): Install new stub type. (AArch64_relobj::scan_errata): This func is renamed from scan_erratum_843419. (AArch64_relobj::do_count_local_symbols): Add 835769 handler. (AArch64_relobj::do_relocate_sections): Add 835769 handler. (AArch64_relobj::scan_sections_for_stubs): Add 835769 handler. (Target_aarch64::scan_erratum_835769_span): New method. (Target_aarch64::create_erratum_stub): New method. (Target_aarch64::is_erratum_835769_sequence): New method. (Target_aarch64::scan_erratum_843419_sequence): Move part of the code into create_erratum_stub. * options.h (fix_cortex_a53_835769): New option.
2015-06-12target: consider addressable unit size when reading/writing memorySimon Marchi3-14/+65
If we are reading/writing from a memory object, the length represents the number of "addresses" to read/write, so the addressable unit size needs to be taken into account when allocating memory on gdb's side. gdb/ChangeLog: * target.c (target_read): Consider addressable unit size when reading from a memory object. (read_memory_robust): Same. (read_whatever_is_readable): Same. (target_write_with_progress): Consider addressable unit size when writing to a memory object. * target.h (target_read): Update documentation. (target_write): Add documentation.
2015-06-12gdbarch: add addressable_memory_unit_size methodSimon Marchi6-0/+55
Add a new gdbarch method to get the length of an addressable memory unit for a given architecture. The default implementation returns 1. gdb/ChangeLog: * arch-utils.h (default_addressable_memory_unit_size): New. * arch-utils.c (default_addressable_memory_unit_size): New. * gdbarch.sh (addressable_memory_unit_size): New. * gdbarch.h: Re-generate. * gdbarch.c: Re-generate.
2015-06-12Remove unused MTMSRD_L macro and re-add accidentally deleted comment.Peter Bergner2-2/+7
In the commit that added PowerPC Pair Singles, Ben accidentally removed a comment and re-added an unused MTMSRD_L macro Alan had recently deleted. This was probably just an oversite when he was refreshing his patch to trunk. opcodes/ * ppc-opc.c: Add comment accidentally removed by old commit. (MTMSRD_L): Delete.
2015-06-12Various cleanups in target read/write codeSimon Marchi3-47/+60
This contains various cleanups in the target memory read and write code. They are not directly related to the non-8-bits changes, but they clarify things a bit down the line. gdb/ChangeLog: * target.c (target_read): Rename variables and use TARGET_XFER_E_IO. (target_read_with_progress): Same. (read_memory_robust): Constify parameters and rename variables. (read_whatever_is_readable): Constify parameters, rename variables, adjust formatting. * target.h (read_memory_robust): Constify parameters.
2015-06-12sim: bfin: expand CB_SYS_xxx commentMike Frysinger2-1/+7
2015-06-12sim: update configure.in->configure.ac docsMike Frysinger62-40/+162
A few places still refer to the configure.in file; update them.
2015-06-12ppc64: Handle short vectors as function return typesUlrich Weigand2-2/+35
Short synthetic vector types (i.e. those defined using GCC's attribute ((vector_size)) instead of AltiVec vector types) are returned in r3. Fix ppc64_sysv_abi_return_value to correctly handle this. gdb/ChangeLog: * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value_base): Handle short synthetic (non-AltiVec) vector types. (ppc64_sysv_abi_return_value): Likewise.
2015-06-12sim: drop -DTRACE from configureMike Frysinger55-84/+193
No code uses this anymore and the symbol conflicts with the new TRACE helper. Punt it from configure.
2015-06-12sim: msp430: use new common trace print helpersMike Frysinger2-109/+69
Replace the "if (TRACE_xxx_P) trace_generic" form with "TRACE_xxx". The output is the same, but the code is nicer to read.
2015-06-12Fix MI dprintf-insert not printing on a resolved pending location.Antoine Tremblay6-2/+155
This patch fixes the "Format string required" error when trying to print a dprintf on a now resolved, pending location when set via the MI interface even if the format string is entered correctly. This patch also adds a test case to check that issue called mi-dprintf-pending.exp. gdb/ChangeLog: PR breakpoints/16465 * breakpoint.c (create_breakpoint): Save extra_string for pending breakpoints. gdb/testsuite/ChangeLog: PR breakpoints/16465 * gdb.mi/mi-dprintf-pending.c: New file. * gdb.mi/mi-dprintf-pending.exp: New test. * gdb.mi/mi-dprintf-pendshr.c: New file.
2015-06-12sim: moxie: use new common trace definesMike Frysinger2-4/+14
Now that there's common helpers for printing trace data, switch to that to restore the insn tracing support for this target.
2015-06-12sim: trace: add common macros for logging infoMike Frysinger8-37/+74
The Blackfin port had some TRACE_xxx macros for easily logging trace data. Use these as a base for common ones that have a simple form and match the existing sets of helper macros.
2015-06-12sim: mips: switch to common WITH_TRACE_ANY_PMike Frysinger4-30/+36
We want to add new common trace helpers including "TRACE", so change the mips one to the new WITH_TRACE_ANY_P macro since they do the same thing.
2015-06-12sim: trace: add WITH_TRACE_ANY_P helperMike Frysinger4-8/+19
We have STRACE_ANY_P and TRACE_ANY_P, so add WITH_TRACE_ANY_P to fill out the API. This lets us wrap the internal configure symbol.
2015-06-12sim: moxie: rename TRACE to MOXIE_TRACE_INSNMike Frysinger2-73/+79
We want to add new common trace helpers including "TRACE", so rename the moxie one to MOXIE_TRACE_INSN. This also matches what the code is doing.
2015-06-12Add new ld option: --print-memory-usageTristan Gingold20-0/+226
ld/ * NEWS: Mention new option. * lexsup.c (parse_args): Handle --print-memory-usage. (ld_options): Add --print-memory-usage. * ldmain.c (main): Call lang_print_memory_usage. * ldlex.h (enum option_values): Add OPTION_PRINT_MEMORY_USAGE. * ldlang.h: Add prototype of lang_print_memory_usage. * ldlang.c (lang_print_memory_size, lang_print_memory_usage): New functions. * ld.texinfo (Options): Document --print-memory-usage. * ld.h (args_type): Add print_memory_usage field. ld/testsuite/ * ld-scripts/print-memory-usage-1.t, * ld-scripts/print-memory-usage-1.s, * ld-scripts/print-memory-usage-1.l, * ld-scripts/print-memory-usage-2.t, * ld-scripts/print-memory-usage-2.l, * ld-scripts/print-memory-usage-3.s, * ld-scripts/print-memory-usage-3.t, * ld-scripts/print-memory-usage-3.l, * ld-scripts/print-memory-usage.t: New tests. * ld-scripts/print-memory-usage.exp: Run them.
2015-06-12sim: cgen: namespace custom trace functionsMike Frysinger43-7039/+7143
The cgen code declares some macros/funcs using the trace_xxx prefix, but the code isn't generic and only works with cgen targets. This is blocking the creation of new common trace functions. Let's blindly add cgen_xxx prefixes to all these symbols. Some already use this convention to avoid conflicts, so it makes sense to align them. In the future we might want to move some to the common trace core, but one thing at a time.
2015-06-12Fix broken GDB build after adding Bound table support for i386.Walfred Tedeschi4-2/+17
Types used for some variables could not be used for 32 bits, causing a compilation failure. This patch adds a cast to force a quite compilation, but at the same time it bails out in the case that the cast performed is not safe, i.e. in the case where the debuggee is 64bit and debugger is 32bit. Documentation was also affected, once a different version of texinfo the docs could not be build. 2015-06-10 Walfred Tedeschi <walfred.tedeschi@intel.com> * i386-tdep.c (i386_mpx_get_bt_entry): Add a cast for mpx_bd_mask and bt_mask to CORE_ADDR. doc: * gdb.textinfo (i386): Fix "@end table" end and "@table" placement.
2015-06-12Automatic date update in version.inGDB Administrator1-1/+1
2015-06-11tc-hppa.c: Speed up search for last labelJohn David Anglin2-50/+28
2015-06-11Fix gold build error at -O0.Cary Coutant2-2/+12
In aarch64.cc, Erratum_stub::STUB_ADDR_ALIGN and Reloc_stub::STUB_ADDR_ALIGN are declared as static const int, and initialized in the class body. These values are referenced from outside the class body, and with no optimization, the references go unresolved. gold/ * aarch64.cc (Erratum_stub::STUB_ADDR_ALIGN): Move initialization outside class body. (Reloc_stub::STUB_ADDR_ALIGN): Likewise.
2015-06-11Fix bug where SECTIONS clause does not handle compressed debug sections.Cary Coutant4-12/+33
When laying out .debug_* sections, we translate the names of compressed debug sections that start with ".zdebug", but when processing input section specs in a linker script, we do not handle the translation there. This results in an internal error as reported in PR 17731. gold/ PR gold/17731 * layout.cc (corresponding_uncompressed_section_name): New function. (Layout::choose_output_section): Call it. * layout.h (corresponding_uncompressed_section_name): New function. * script-sections.cc (Input_section_info::set_section_name): Check for compressed debug section (.zdebug style).
2015-06-11Fix broken gold/testsuite/script_test_12 in some setup.Jing Yu3-0/+13
This patch adds -O0 to gold script_test_12 test, hoping that compiler won't change the order of globel variables that the test assumes. Changelog: testsuite/Makefile.am: Add -O0 to compile script_test_12 test. testsuite/Makefile.in: Regenerate.
2015-06-11sim: msp430: delete unused trace macrosMike Frysinger2-48/+6
These macros were copied from the Blackfin port but never used, so delete them as part of the trace unification work.
2015-06-11sim: trace: centralize the system tracingMike Frysinger4-17/+14
First we convert the ETRACE_P to STRACE_EVENTS_P. This means we move from using the sim_events.trace storage to the common sim_state_base.trace_data array. With that deleted, the common trace init code can be simplified so the sim state works the same as the sim cpu.
2015-06-11sim: trace: add STRACE_xxx_P macrosMike Frysinger2-0/+21
These are the parallel to the TRACE_xxx_P macros and fill out the full set to match the existing debug one.
2015-06-11sim: trace: use existing defines for the useful maskMike Frysinger2-4/+5
No point in duplicating the shift logic when we have macros already to keep that all unified.
2015-06-11sim: trace: create a common WITH_TRACE_P macroMike Frysinger2-19/+28
This way we can use the IDX macros everywhere and not worry about the encoding of the WITH_TRACE define in multiple places.
2015-06-11sim: frv: drop custom debug maskMike Frysinger2-5/+4
This is the only sim that sets up its own WITH_TRACE mask and it conflicts with the user setting their own list at configure time. Drop it to match all the other sims.
2015-06-11sim: m68hc11: delete unused interrupt_namesMike Frysinger2-8/+4
The interrupts.c file has a static/fuller definition that is used, so drop this copy in interp.c.
2015-06-11sim: m68hc11: switch to common sim_resumeMike Frysinger3-77/+7
This code already matched the common sim reusme logic, so we can simply drop it and pull in the common code.
2015-06-11sim: mn10300: delete unused memory codeMike Frysinger4-62/+19
Only one place used get_word/put_word, so inline the usage there. All the rest is dead code so trim it.
2015-06-11Use pulongest for printing ssize_tGary Benson2-4/+10
This commit changes the debug printing code in linux-namespaces.c to use pulongest instead of "%ld". gdb/ChangeLog: * nat/linux-namespaces.c (mnsh_send_message): Use pulongest. (mnsh_recv_message): Likewise.
2015-06-11Fix ARI new warnings introduced in i386-tdep.c.Walfred Tedeschi2-2/+7
1. gdb/i386-tdep.c:8720: Do not use 'long long', instead use LONGEST gdb/i386-tdep.c:8720: long long int size; 2. gdb/i386-tdep.c:8755: Do not use printf(%ll), instead use printf(%s,phex()) to dump a 'long long' value gdb/i386-tdep.c:8755: ui_out_field_fmt (uiout, "size", "%lld", size); 2015-06-11 Walfred Tedeschi <walfred.tedeschi@intel.com> * i386-tdep.c (i386_mpx_print_bounds): use of LONGEST instead of long long int and plongest instead of %ll. Signed-off-by: Walfred Tedeschi <walfred.tedeschi@intel.com>
2015-06-11sim: mn10300: add missing static markingsMike Frysinger2-2/+6
2015-06-11sim: mn10300: delete unused exception/exited/debug stateMike Frysinger4-22/+11
The syscall path was the only code checking the custom exception state after recent cleanups. Once we change that to the common engine halt function, we can delete that state entirely. This also helps highlight some other dead code that we can cull.
2015-06-11sim: mn10300: use common size typesMike Frysinger2-29/+12
No point in open coding this logic here when we have common size types already that give the right answer.
2015-06-11sim: m68hc11/mn10300/v850: delete redundant INLINE definesMike Frysinger7-32/+13
The sim-inline.h header already takes care of this for us, so punt the local definitions.
2015-06-11sim: microblaze: switch to common sim_resume/sim_stop_reasonMike Frysinger4-28/+27
This allows us to use the common code for all exception handling.
2015-06-11Fix ARI warning in linux-namespaces.cGary Benson2-1/+6
This commit fixes the following ARI warning: gdb/nat/linux-namespaces.c:28: regression: Do not include wait.h or sys/wait.h, instead include gdb_wait.h gdb/ChangeLog: * nat/linux-namespaces.c (gdb_wait.h): New include. (sys/wait.h): Do not include.
2015-06-11[GOLD] Fix handling of __start/__stop symbolsDavide Italiano2-2/+6
If the section contains 'Q' in the name, is_cident() returns false, __start and __stop symbols for the section are not generated.. * gold.h (is_cident): Correct typo.
2015-06-11Automatic date update in version.inGDB Administrator1-1/+1