aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2015-03-24sim: Revert "Fix frv/iq2000/m32r/sh64 sim, default hardware to off."Mike Frysinger12-10/+24
This partially reverts commits: 105dd264de9a2fa7eee45eff897aa1d6171c1c4b 3df3af7c3f9095f9dc951fe680ce76f6e497914b c4892a6b37647a0b33a2113b59762f678aabe4b2 9e3042ec073e05a0a5aa56398fd2662c5dcd5002 Now that dv-sockser is handled entirely by the common build logic, the failure these targets were hitting isn't really possible anymore. Lets reset their hardware status back to defaulting to on. Some of these were set to "always" previously, but we don't support that anymore.
2015-03-24sim: fix sim-hardware configure optionMike Frysinger22-67/+67
The current default handling for the --enable-sim-hardware option ends up forcing the value to whatever is set as the first argument when calling the macro (by virtue of how autoconf works). Relocate the setup code to the 4th parameter of the AC_ARG_ENABLE macro to fix it. This was caused by the simplification work in 1517bd274290e06af498ef7e49. Reported-by: Hans-Peter Nilsson <hans-peter.nilsson@axis.com>
2015-03-23sim: drop support for requiring hw supportMike Frysinger21-111/+96
Since no sim is using the "always" option to SIM_AC_OPTION_HARDWARE, and we don't want to require hw support to always be enabled, drop the option. This leads to a slight simplification in the macro too as we can collapse the sim_hw_p variable.
2015-03-23sim: cris: delete unused CONFIG_DEVICESMike Frysinger2-3/+5
Looks like unused copy & paste from other sim ports. Drop it.
2015-03-23sim: mn10300: fix duplicated hardware optionMike Frysinger3-119/+4
This code was calling SIM_AC_OPTION_HARDWARE twice -- we only want and need to do it once.
2015-03-23sim: iq2000/mn10300: drop dv-sockser.o referencesMike Frysinger4-7/+11
The common code handles this for us now automatically.
2015-03-23sim: frv: delete UART device supportMike Frysinger2-37/+6
This looks like copy & paste logic from the m32r port (and history suggests this as well). Since building with hw & device support enabled leads to failures: sim/frv/devices.c: In function 'device_io_read_buffer': sim/frv/devices.c:39:15: error: 'UART_INCHAR_ADDR' undeclared (first use in this function) Delete it entirely. We leave device support in place as it is used to flush the scache.
2015-03-24Automatic date update in version.inGDB Administrator1-1/+1
2015-03-23Fix indentation in ser_windows_setparity and hardwire_setparity.Joel Brobecker3-2/+7
gdb/ChangeLog: * ser-mingw.c (ser_windows_setparity): Fix indentation. * ser-unix.c (hardwire_setparity): Likewise.
2015-03-23GDB: Add set/show serial parity command.Yury Grechishchev16-4/+206
The "set serial parity" command allows the user to control which parity to use when communicating over a serial connection, rather than having the parity hardcoded to none. gdb/ChangeLog: * NEWS: Mention set/show serial parity command. * monitor.c (monitor_open): Call serial_setparity. * remote.c (remote_open_1): Likewise. * ser-base.c (ser_base_serparity): New function. * ser-base.h (ser_base_setparity): Add declaration. * ser-go32.c (dos_ops): Set "setparity" field. * ser-mingw.c (ser_windows_raw): Do not set state.fParity and state.Parity. (ser_windows_setparity): New function. (hardwire_ops): Add ser_windows_setparity. (tty_ops): Add NULL for setparity field. (pipe_ops): Add ser_base_setparity. (tcp_ops): Likewise. * ser-pipe.c (pipe_ops): Likewise. * ser-tcp.c (tcp_ops): Likewise. * ser-unix.c (hardwire_setparity): Add declaration. (hardwire_raw): Don't reset PARENB flag. (hardwire_setparity): New function. (hardwire_ops): Add hardwire_setparity. * serial.c (serial_setparity): New function. (serial_parity): New global. (parity_none, parity_odd, parity_even, parity_enums, parity): New static globals. (set_parity): New function. (_initialize_serial): Add set/show serial parity commands. * serial.h (GDBPARITY_NONE): Define. (GDBPARITY_ODD): Define. (GDBPARITY_EVEN): Define. (serial_setparity) Add declaration. (struct serial_ops): Add setparity field. * target.h (serial_parity): Add declaration. gdb/doc/ChangeLog: * gdb.texinfo (Remote configuration): Document "set/show serial parity" command.
2015-03-23Update comment of linespec_lexer_lex_keyword.Keith Seitz2-2/+5
gdb/ChangeLog * linespec.c (linespec_lexer_lex_keyword): Update comment.
2015-03-23Add missing changelog entries of last commitKeith Seitz2-0/+20
2015-03-23Expand keyword lexing intelligence in the linespec parser.Keith Seitz5-22/+153
This patch changes the heuristic the linespec lexer uses to detect a keyword in the input stream. Currently, the heuristic is: a word is a keyword if it 1) points to a string that is a keyword 2) is followed by a non-identifier character This is strictly more correct than using whitespace. For example, it allows constructs such as "break foo if(i == 1)". However, find_condition_and_thread in breakpoint.c does not support this expanded usage. It requires whitespace to follow the keyword. The proposed new heuristic is: a word is a keyword if it 1) points to a string that is a keyword 2) is followed by whitespace 3) is not followed by another keyword string followed by whitespace This additional complexity allows constructs such as "break thread thread 3" and "break thread 3". In the former case, the actual location is a symbol named "thread" to be set on thread #3. In the later case, the location is NULL, i.e., the default location, to be set on thread #3. In order to pass all the new tests added here, I've also had to add a new feature to parse_breakpoint_sals, which expands recognition of the default location to keywords other than "if", which is the only keyword currently permitted with the default (NULL) location, but there is no reason to exclude other keywords. Consequently, it will be possible to use "break thread 1" or "break task 1". In addition to all of this, it is now possible to remove the keyword_ok state from the linespec parser. gdb/ChangeLog * breakpoint.c (parse_breakpoint_sals): Use linespec_lexer_lex_keyword to ascertain if the user specified a NULL location. * linespec.c [IF_KEYWORD_INDEX]: Define. (linespec_lexer_lex_keyword): Export. (struct ls_parser) <keyword_ok>: Remove. A keyword is only a keyword if not followed by another keyword. (linespec_lexer_lex_one): Remove keyword_ok handling. Add comment explaining why the parsing stream is not advanced when a keyword is seen. (parse_linespec): Remove parser->keyword_ok. * linespec.h (linespec_lexer_lex_keyword): Add declaration. gdb/testsuite/ChangeLog * gdb.linespec/keywords.c: New file. * gdb.linespec/keywords.exp: New file.
2015-03-23PR gdb/18021 - defend against "static virtual" methodsKeith Seitz4-1/+83
This bug appears to be caused by bad debuginfo. The method causing the sefault in the reporter's test case is marked both static and virtual. This patch simply safegaurds against this case in dwarf2_add_member_fn, where the code assumes that there is a `this' pointer when a virtual method is seen (more specifically, when DW_AT_vtable_elem is seen). It previously dereferenced the first formal parameter (`this' pointer), which in this case doesn't exist. GDB consequently segfaulted dereferencing a NULL pointer. gdb/ChangeLog PR gdb/18021 * dwarf2read.c (dwarf2_add_member_fn): Issue a complaint if we find a static method with DW_AT_vtable_elem_location. gdb/testsuite/ChangeLog PR gdb/18021 * gdb.dwarf2/staticvirtual.exp: New test.
2015-03-23[OBV] Fix build -- missing ';'Keith Seitz2-1/+6
bfd/ChangeLog * elfnn-aarch64.c (_bfd_aarch64_create_or_find_stub_sec): Add missing ';'.
2015-03-23Adding Changelog for previous commit.Marcus Shawcroft1-0/+6
2015-03-23Factor out _bfd_aarch64_erratum_835769_stub_nameMarcus Shawcroft1-7/+11
2015-03-23[AArch64] Factor out _bfd_aarch64_resize_stubs()Marcus Shawcroft2-12/+30
2015-03-23[AArch64] Factor stub creation code into _bfd_aarch64_create_stub_section.Marcus Shawcroft2-14/+29
2015-03-23[AArch64] Factor out common behaviour between ↵Marcus Shawcroft2-52/+42
elf_aarch64_create_or_find_stub_sec and elfNN_aarch64_add_stub
2015-03-23[AArch64] Flip sense of erratum_835769_scan.Marcus Shawcroft2-8/+19
2015-03-23[AArch64] Drop unused argument to elf_aarch64_create_or_find_stub_secMarcus Shawcroft2-10/+11
2015-03-23[AArch64] Remove unused variable.Marcus Shawcroft2-3/+6
2015-03-23Fixup previous changelog entry.Marcus Shawcroft1-1/+2
2015-03-23Remove dead code.Marcus Shawcroft2-16/+6
2015-03-23[AArch64] Tidy up in aarch64_mem_op_p().Marcus Shawcroft2-19/+31
2015-03-23[AArch64] Adjust layout of elfNN_aarch64_write_section.Marcus Shawcroft2-1/+5
2015-03-23[AArch64] Adjust layout emultempl/aarch64elf.em.Marcus Shawcroft2-1/+6
2015-03-23Remove is_merge_section_for.Rafael Ávila de Espíndola7-115/+71
Now that Input_merge_map has an Output_section_data, we can use it in implementing find_merge_section and replace the only use of is_merge_section_for with it.
2015-03-23Fix thinko with previous delta to RL78 sim, by adding code to define the G10 ↵Nick Clifton4-2/+14
and G13 mode options. * cpu.c (rl78_g10_mode): Declare. (g13_multiply): Declare. * cpu.h (rl78_g10_mode): Export. (g13_multiply): Export.
2015-03-23sim: dv-sockser: move build to common dirMike Frysinger29-100/+123
If dv-sockser is available, lets add it to the common SIM_HW_OBJS variable so it is always included automatically. Now ports do not have to shoe horn it in directly themselves. It does mean it will be compiled for targets that don't explicitly use it, but that's really what we want anyways.
2015-03-23sim: dv-sockser: add stub funcs when not availableMike Frysinger11-36/+61
This lets ports assume that the dv-sockser API is always available if they want to. This way we don't have to do an abort at configure time and it makes the resulting code a bit simpler.
2015-03-23sim: bfin/msp430: drop run-sim.h includeMike Frysinger4-2/+8
This header is used only with run.o, and both of these use nrun.o.
2015-03-23sim: sh64: delete dv-sockser referencesMike Frysinger2-5/+6
This sim doesn't actually use dv-sockser code anywhere, so drop references to it in its build files.
2015-03-23Automatic date update in version.inGDB Administrator1-1/+1
2015-03-22Fix support for i386 TLS GD-to-IE optimization.Cary Coutant2-19/+14
There are two cases to support, one with an SIB-form (6-byte) LEA, the other with a 5-byte LEA and a NOP after the call __tls_get_addr. Gold did not yet support the second case. This patch adds that support. gold/ PR gold/18106 * i386.cc (Target_i386::Relocate::tls_gd_to_ie): Fix support for non-SIB form of lea, with nop after the call.
2015-03-21Fix internal error with -z relro when .tbss is last relro section.Cary Coutant2-3/+10
When calculating the padding necessary to align the end of the relro segment to a page boundary, gold erroneously ignores the .tdata section when checking to see if there are any relro sections (so if .tdata is the only relro section, we fail to align the segment properly), and erroneously pads the cumulative size of the segment based on the alignment of .tbss. If there are no relro sections following .tbss, it then fails to note the padding needed at the end of .tdata. This patch fixes both problems. is_first_section_relro() will return true when it sees a .tdata section, and we do not align the cumulative size until after checking for the .tbss section. gold/ PR gold/14217 * output.cc (Output_segment::is_first_section_relro): Don't ignore .tdata section. (Output_segment::set_section_addresses): Don't align size of relro segment for .tbss.
2015-03-21Fix bug when optimizing string pools of aligned strings.Cary Coutant2-1/+9
Tail optimization of string pools (enabled when linker is run with -O2 or greater) should not be done when the section alignment is greater than the size of the characters in the strings; otherwise, unaligned strings may result. gold/ PR gold/18010 * stringpool.cc (Stringpool_template): Don't optimize if section alignment is greater than sizeof(char).
2015-03-21PR gold/18048: Fix INCLUDE directive support for goldCary Coutant10-22/+112
This patch fixes INCLUDE directives in script files, so that when an INCLUDE appears inside a sections block, section commands block, or memory def block, the contents are parsed in the appropriate context. gold/ PR gold/18048 * script-c.h (script_include_directive): Add first_token parameter. * script.cc (script_include_directive): Add first_token parameter, and pass it to read_script_file. * yyscript.y (PARSING_SECTIONS_BLOCK, PARSING_SECTION_CMDS) (PARSING_MEMORY_DEF): New tokens. (top): Add new productions for INCLUDE files. (file_cmd): Replace file_or_sections_cmd with copy of its productions. Pass PARSING_LINKER_SCRIPT to script_include_directive. (section_block_cmd): Likewise; pass PARSING_SECTIONS_BLOCK. (section_cmd): Pass PARSING_SECTION_CMDS. (file_or_sections_cmd): Remove. (memory_def): Pass PARSING_MEMORY_DEF. * testsuite/Makefile.am (memory_test_2): New test. * testsuite/Makefile.in: Regenerate. * testsuite/memory_test_inc.t: New script file. * testsuite/memory_test_inc_1.t.src: New script file. * testsuite/memory_test_inc_2.t.src: New script file. * testsuite/memory_test_inc_3.t.src: New script file.
2015-03-21Support compressed debug sections in dynamic object files.Cary Coutant5-129/+128
This patch adds support for reading compressed debug info in shared objects. It actually simplifies things, by moving the support for compressed sections all the way up to the top-level Object class, eliminating the need for several virtual methods. gold/ * dwp.cc (Sized_relobj_dwo::do_section_contents): Delete. (Sized_relobj_dwo::setup): Build compressed section map. (Sized_relobj_dwo::do_decompressed_section_contents): Delete. * dynobj.cc (Sized_dynobj::base_read_symbols): Build compressed section map. * object.cc (Sized_relobj_file::Sized_relobj_file): Remove compressed_sections_ field. (build_compressed_section_map): Take Object instead of Sized_relobj_file parameter; add decompress_if_needed parameter. (Sized_relobj_file::do_find_special_sections): Store compressed section map in parent Object. (Sized_relobj_file::do_decompressed_section_contents): Move implementation to Object::decompressed_section_contents. (Sized_relobj_file::do_discard_decompressed_sections): Move implementation to Object::discard_decompressed_sections. * object.h (build_compressed_section_map): Declare. (Object::Object): Add compressed_sections_ field. (Object::section_is_compressed): Move implementation here. (Object::decompressed_section_contents): De-virtualize. (Object::discard_decompressed_sections): De-virtualize. (Object::do_section_is_compressed): Delete. (Object::do_decompressed_section_contents): Delete. (Object::set_compressed_sections): New method. (Object::compressed_sections): New method. (Object::compressed_sections_): New data member. (Compressed_section_info, Compressed_section_map): Move to top of file. (Sized_relobj_file::do_section_is_compressed): Delete. (Sized_relobj_file::do_decompressed_section_contents): Delete. (Sized_relobj_file::do_discard_decompressed_sections): Delete. (Sized_relobj_file::compressed_sections_): Move to Object class.
2015-03-21Fix internal error in do_relocate_sections when using plugins.Cary Coutant2-3/+9
In a previous patch for PR 14675, to fix a problem with the .eh_frame section when static linking, I added a step to finalize the .eh_frame section at the end of the first link pass. This patch caused PR 18152, where a plugin-claimed object caused a non-claimed object's layout to be deferred until replacement files were read. The call to finalize_eh_frame_section() is happening before the layout of the deferred objects, leading to the internal error in do_relocate_sections. This patch moves the finalization of the .eh_frame section to after deferred objects have been processed. gold/ PR gold/14675 PR gold/18152 * gold.cc (queue_middle_tasks): Finalize .eh_frame after laying out deferred objects.
2015-03-22Automatic date update in version.inGDB Administrator1-1/+1
2015-03-21Fix undefined behavior in TUI's TAB expansionEli Zaretskii2-8/+14
gdb/ChangeLog: * tui/tui-io.c (tui_expand_tabs): Reinitialize the column counter before the second loop, to avoid undefined behavior. Reported by Anton Blanchard <anton@samba.org>.
2015-03-21Automatic date update in version.inGDB Administrator1-1/+1
2015-03-20[gdb/DWARF] Introduce linked list for dynamic attributesKeven Boell4-32/+136
This patch introduces a linked list for dynamic attributes of a type. This is a pre-work for the Fortran dynamic array support. The Fortran dynamic array support will add more dynamic attributes to a type. As only a few types will have such dynamic attributes set, a linked list is more efficient in terms of memory consumption than adding multiple attributes to main_type. gdb/ChangeLog: * gdbtypes.c (resolve_dynamic_type_internal): Adapt data_location usage to linked list. (resolve_dynamic_type_internal): Adapt data_location to linked list. (get_dyn_prop, add_dyn_prop, copy_dynamic_prop_list): New function. (copy_type_recursive, copy_type): Add copy of linked list. * gdbtypes.h (enum dynamic_prop_node_kind): New enum. (struct dynamic_prop_list): New struct. * dwarf2read.c (set_die_type): Set data_location data.
2015-03-20constify i386-sol2-tdep.c and machoread.cPedro Alves3-2/+9
/home/pedro/gdb/mygit/src/gdb/i386-sol2-tdep.c: In function ‘const char* i386_sol2_static_transform_name(const char*)’: /home/pedro/gdb/mygit/src/gdb/i386-sol2-tdep.c:93:29: error: invalid conversion from ‘const char*’ to ‘char*’ [-fpermissive] p = strrchr (name, '.'); ^ gdb: 2015-03-20 Pedro Alves <palves@redhat.com> * i386-sol2-tdep.c (i386_sol2_static_transform_name): Move "p" to inner block and make it const. * machoread.c (get_archive_prefix_len): Make "lparen" const.
2015-03-20constify set_breakpoint_conditionPedro Alves3-2/+7
gdb: 2015-03-20 Pedro Alves <palves@redhat.com> * breakpoint.c (set_breakpoint_condition): Make argument "exp" const. * breakpoint.h (set_breakpoint_condition): Update declaration.
2015-03-20constify tui/tui-io.cPedro Alves2-1/+5
gdb: 2015-03-20 Pedro Alves <palves@redhat.com> * tui/tui-io.c (tui_expand_tabs): Make "s1" const.
2015-03-20constify xcoffread.cPedro Alves2-2/+6
/home/pedro/gdb/mygit/src/gdb/xcoffread.c: In function ‘void scan_xcoff_symtab(objfile*)’: /home/pedro/gdb/mygit/src/gdb/xcoffread.c:2644:33: error: invalid conversion from ‘const char*’ to ‘char*’ [-fpermissive] p = strchr (namestring, ':'); ^ gdb: 2015-03-20 Pedro Alves <palves@redhat.com> * xcoffread.c (scan_xcoff_symtab): Make "p" and "q" const.
2015-03-20constify remote-m32r-sdi.cPedro Alves2-1/+6
gdb: 2015-03-20 Pedro Alves <palves@redhat.com> * remote-m32r-sdi.c (m32r_open): Make "port_str" const.