aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2011-06-20 PR ld/12570Jakub Jelinek55-90/+435
include/ * bfdlink.h (struct bfd_link_info): Add no_ld_generated_unwind_info option. ld/ * emultempl/elf32.em (OPTION_LD_GENERATED_UNWIND_INFO, OPTION_NO_LD_GENERATED_UNWIND_INFO): Define. (gld${EMULATION_NAME}_handle_option): Handle --ld-generated-unwind-info and --no-ld-generated-unwind-info. * ld.texinfo (--ld-generated-unwind-info, --no-ld-generated-unwind-info): Document. bfd/ * elf-eh-frame.c (_bfd_elf_parse_eh_frame): Allow no relocations at all for linker created .eh_frame sections. (_bfd_elf_discard_section_eh_frame): Handle linker created .eh_frame sections with no relocations. * elf64-x86-64.c: Include dwarf2.h. (elf_x86_64_eh_frame_plt): New variable. (PLT_CIE_LENGTH, PLT_FDE_LENGTH, PLT_FDE_START_OFFSET, PLT_FDE_LEN_OFFSET): Define. (struct elf_x86_64_link_hash_table): Add plt_eh_frame field. (elf_x86_64_create_dynamic_sections): Create and fill in .eh_frame section for .plt section. (elf_x86_64_size_dynamic_sections): Write .plt section size into .eh_frame FDE covering .plt section. (elf_x86_64_finish_dynamic_sections): Write .plt section start into .eh_frame FDE covering .plt section. Call _bfd_elf_write_section_eh_frame on htab->plt_eh_frame section. (elf_backend_plt_alignment): Define to 4. * elf32-i386.c: Include dwarf2.h. (elf_i386_eh_frame_plt): New variable. (PLT_CIE_LENGTH, PLT_FDE_LENGTH, PLT_FDE_START_OFFSET, PLT_FDE_LEN_OFFSET): Define. (struct elf_i386_link_hash_table): Add plt_eh_frame field. (elf_i386_create_dynamic_sections): Create and fill in .eh_frame section for .plt section. (elf_i386_size_dynamic_sections): Write .plt section size into .eh_frame FDE covering .plt section. (elf_i386_finish_dynamic_sections): Write .plt section start into .eh_frame FDE covering .plt section. Call _bfd_elf_write_section_eh_frame on htab->plt_eh_frame section. (elf_backend_plt_alignment): Define to 4. ld/testsuite/ * ld-x86-64/x86-64.exp: Link some testcases with --no-ld-generated-unwind-info. * ld-x86-64/tlsbin.rd: Add --no-ld-generated-unwind-info to ld comment. * ld-x86-64/tlsdesc.dd: Likewise. * ld-x86-64/tlspic.dd: Likewise. * ld-x86-64/tlsdesc.sd: Likewise. * ld-x86-64/tlspic.rd: Likewise. * ld-x86-64/tlsbindesc.rd: Likewise. * ld-x86-64/tlsbindesc.sd: Likewise. * ld-x86-64/tlsbin.td: Likewise. * ld-x86-64/tlsdesc.pd: Likewise. * ld-x86-64/tlsdesc.td: Likewise. * ld-x86-64/tlsbindesc.dd: Likewise. * ld-x86-64/tlsbin.dd: Likewise. * ld-x86-64/tlsgdesc.rd: Likewise. * ld-x86-64/tlspic.sd: Likewise. * ld-x86-64/tlsbindesc.td: Likewise. * ld-x86-64/tlspic.td: Likewise. * ld-x86-64/tlsbin.sd: Likewise. * ld-x86-64/ilp32-4.d: Likewise. * ld-x86-64/tlsgdesc.dd: Add --no-ld-generated-unwind-info to ld comment. Adjust. * ld-x86-64/tlsdesc.rd: Likewise. * ld-x86-64/tlsgd6.dd: Adjust. * ld-x86-64/tlsgd5.dd: Likewise. * ld-i386/i386.exp: Link some testcases with --no-ld-generated-unwind-info. * ld-i386/tlsbin.rd: Add --no-ld-generated-unwind-info to ld comment.. * ld-i386/tlsdesc.dd: Likewise. * ld-i386/tlspic.dd: Likewise. * ld-i386/tlsdesc.sd: Likewise. * ld-i386/tlsgdesc.dd: Likewise. * ld-i386/tlsnopic.sd: Likewise. * ld-i386/tlspic.rd: Likewise. * ld-i386/tlsdesc.rd: Likewise. * ld-i386/tlsbindesc.rd: Likewise. * ld-i386/tlsbindesc.sd: Likewise. * ld-i386/tlsbin.td: Likewise. * ld-i386/tlsdesc.td: Likewise. * ld-i386/tlsnopic.dd: Likewise. * ld-i386/tlsbindesc.dd: Likewise. * ld-i386/tlsbin.dd: Likewise. * ld-i386/tlsgdesc.rd: Likewise. * ld-i386/tlspic.sd: Likewise. * ld-i386/tlsnopic.rd: Likewise. * ld-i386/tlsbindesc.td: Likewise. * ld-i386/tlspic.td: Likewise. * ld-i386/tlsbin.sd: Likewise.
2011-06-20 * doc/Makefile.am: (CPU_DOCS): Add c-xstormy16.texi.Nick Clifton5-0/+114
* doc/Makefile.in: Regenerate. * doc/all.texi: Set XSTORMY16. * doc/c-xstormy16.texi: New file.
2011-06-20daily updateAlan Modra1-1/+1
2011-06-20*** empty log message ***gdbadmin1-1/+1
2011-06-19 PR gold/12880Ian Lance Taylor3-41/+36
* layout.cc (Layout::attach_allocated_section_to_segment): Add a .interp section to a PT_INTERP segment even if we have seen a --dynamic-linker option. Don't do it if we have seen a PHDRS clause in a linker script. (Layout::finalize): Don't create a .interp section if we've already create a PT_INTERP segment. (Layout::create_interp): Always call choose_output_section (revert patch of 2011-06-17). Don't create PT_INTERP segment. * script-sections.cc (Script_sections::create_note_and_tls_segments): Add a .interp section to a PT_INTERP segment even if we have seen a --dynamic-linker option.
2011-06-19Fix misc x32 bugs.H.J. Lu20-14/+79
bfd/ 2011-06-19 H.J. Lu <hongjiu.lu@intel.com> * elf64-x86-64.c (elf_backend_post_process_headers): Defined for x32. binutils/testsuite/ 2011-06-19 H.J. Lu <hongjiu.lu@intel.com> * binutils-all/elfedit-1.d: Updated for x32. gas/ 2011-06-19 H.J. Lu <hongjiu.lu@intel.com> * configure.tgt: Support x32. ld/ 2011-06-19 H.J. Lu <hongjiu.lu@intel.com> * configure.tgt: Support x32. ld/testsuite/ 2011-06-19 H.J. Lu <hongjiu.lu@intel.com> * ld-elf/eh1.d: Skip x32. * ld-elf/eh2.d: Likewise. * ld-elf/eh3.d: Likewise. * ld-elf/eh4.d: Likewise. * ld-elfvsb/elfvsb.exp: Only xfail 64bit x86_64-*-linux*. * ld-shared/shared.exp: Likewise. * ld-ifunc/ifunc-1-local-x86.d: Support x32. * ld-ifunc/ifunc-1-x86.d: Likewise. * ld-ifunc/ifunc-3a-x86.d: Likewise. * ld-x86-64/pcrel16.d: Likewise. * ld-x86-64/x86-64.exp (x86_64tests): Add missing -melf_x86_64.
2011-06-19*** empty log message ***gdbadmin1-1/+1
2011-06-18 * layout.cc (Layout::finish_dynamic_section): Don't set DT_TEXTRELIan Lance Taylor2-2/+8
merely because a non-PT_LOAD segment has a dynamic reloc.
2011-06-18 * layout.cc (Layout::finish_dynamic_section): Don't createIan Lance Taylor2-2/+8
DT_FLAGS entry if not needed.
2011-06-18 PR gold/12745Ian Lance Taylor2-2/+18
* layout.cc (Layout::layout_eh_frame): Correct handling of writable .eh_frame section.
2011-06-18sim: bfin: set ASTAT AV/AVS when shifting accumulators overflowMike Frysinger2-0/+12
The LSHIFT/ASHIFT insns that work with accumulators lacked AV/AVS handling in the ASTAT register, so add it to match the hardware. Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-06-18sim: bfin: do not touch ASTAT[V] when shifting accumulatorsMike Frysinger2-3/+9
If we're shifting accumulators, we don't want to touch the V bit in ASTAT, so add size checks to the ashiftrt/lshiftrt helpers. Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-06-18sim: bfin: do not extend accumulator in LSHIFT insnsMike Frysinger2-1/+6
The logical shift insn does not sign extend before shifting, so we shouldn't either. Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-06-18sim: bfin: tweak saturation handling with TFU/FU modes and MM bitMike Frysinger2-14/+35
This too should have been squashed into an earlier change. It covers a few more cases in the V/VS saturation patch when working with TFU and FU modes of dsp insns. Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-06-18sim: bfin: handle large shift values with accumulator shift insnsMike Frysinger2-2/+14
When the shift magnitude exceeds 32 bits, the values rotate around (since the hardware is actually a barrel shifter). So handle this edge case, update the corresponding AV bit in ASTAT which was missing previously, and tweak the AZ setting based on how the hardware behaves. Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-06-18sim: bfin: handle odd shift values with shift insnsMike Frysinger2-7/+36
The shift magnitude is a 5-bit signed value. When it is between 0 and 15, then we do the requested shift, but when it is outside of that, we have to do the opposite. That means we flip between lshift and ashiftrt to match the hardware. Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-06-18sim: bfin: add tests for recent dsp fixesMike Frysinger14-0/+2502
Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-06-18sim: bfin: fix M_IH saturation sizeMike Frysinger2-17/+6
This reverts the previous commit and does it right. This change got lost in the shuffle of patches I have pending. Basically the logic is to change the 32bit saturation (and then masked to 16bits) to a proper 16bit saturation. Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-06-18sim: bfin: handle V/VS saturation in dsp mac insnsMike Frysinger2-25/+58
Some saturation cases with dsp mac insns were not setting the V flag. So implement that part and split up the logic between the dual macs. Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-06-18sim: bfin: handle the MM flag in M_IU/M_TFU modes with dsp insnsMike Frysinger2-0/+10
Our handling of the M_IU/M_TFU modes are missing signed saturation when the MM flag is set, so add it to match the hardware behavior. Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-06-18sim: bfin: fix sign extension in dsp insns with MM flagMike Frysinger4-8/+20
After testing the hardware with all the different dsp flags, the MM flag triggers sign extension in all modes. So drop the limited use of it, and the local custom helper that was also extending unsigned values. We also can see that the flag checks in the mult/mac insns have the same behavior with sign extending, so add a helper func to keep the logic the same in both places. Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-06-18sim: bfin: fix dsp insns IH saturation/rounding behaviorMike Frysinger2-1/+16
When using the IH modifier, we need to first saturate the value before rounding it, and then further saturate it a bit more. This makes the sim match the hardware behavior with these insns. Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-06-18sim: bfin: fix inverted changelog entryMike Frysinger1-1/+1
2011-06-18sim: bfin: fix accumulator edge case saturationMike Frysinger2-2/+7
When the accumulator saturates, it needs to be greater than, but not equal to, the largest unsigned value as this is what the hardware does. Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-06-18sim: bfin: use freeargv for freeing argvsMike Frysinger2-1/+5
Since the argv array was allocated with dupargv, it needs to be freed with freeargv to avoid leaks. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-06-18opcodes: blackfin: fix styleMike Frysinger2-2/+7
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-06-18*** empty log message ***gdbadmin1-1/+1
2011-06-18daily updateAlan Modra1-1/+1
2011-06-17 * valops.c (value_of_this): Use lookup_language_this.Tom Tromey5-45/+50
* symtab.h (lookup_language_this): Declare. * symtab.c (lookup_language_this): New function. (lookup_symbol_aux): Use lookup_language_this. * ax-gdb.c (gen_expr) <OP_THIS>: Use lookup_language_this.
2011-06-17 * value.h (value_of_this): Update.Tom Tromey5-19/+17
(value_of_local): Remove. * valops.c (value_of_this): Rename from value_of_local. Change parameters. * p-exp.y (exp): Update. (variable): Likewise. * eval.c (evaluate_subexp_standard) <OP_THIS>: Use value_of_this.
2011-06-17 * valops.c (value_of_local): Complain if NAME is NULL.Tom Tromey7-21/+26
* std-operator.def (OP_OBJC_SELF): Remove. * parse.c (operator_length_standard) <OP_OBJC_SELF>: Remove. * objc-exp.y (name_not_typename): Use OP_THIS. * expprint.c (print_subexp_standard) <OP_THIS>: Print language's name for "this". <OP_OBJC_SELF>: Remove. * eval.c (evaluate_subexp_standard) <OP_OBJC_SELF>: Remove.
2011-06-17* Makefile.am (MAINTAINERCLEANFILES): Move s390-opc.tab ...Andreas Schwab3-5/+11
(MOSTLYCLEANFILES): ... here. * Makefile.in: Regenerate.
2011-06-17 PR gold/12893Ian Lance Taylor2-2/+22
* resolve.cc (Symbol_table::resolve): Don't give an error if a symbol is redefined with the exact same object and value.
2011-06-17 PR gold/12880Ian Lance Taylor4-18/+78
* layout.h (class Layout): Add interp_segment_ field. * layout.cc (Layout::Layout): Initialize interp_segment_ field. (Layout::attach_allocated_section_to_segment): If making shared library, put .interp section in PT_INTERP segment. (Layout::finalize): Also call create_interp if -dynamic-linker option was used. (Layout::create_interp): Assert that there is no PT_INTERP segment. If not using a SECTIONS clause, use make_output_section. (Layout::make_output_segment): Set interp_segment_ if PT_INTERP. * script-sections.cc (Script_sections::create_note_and_tls_segments): If making shared library, put .interp section in PT_INTERP segment.
2011-06-17 * object.cc (Sized_relobj_file::do_layout): Keep warning sectionsIan Lance Taylor2-6/+10
when making a shared library.
2011-06-17 * x86_64.cc (check_non_pic): Add gsym parameter. Change allIan Lance Taylor2-12/+38
callers. Don't issue warning about PC32 against locally defined symbol.
2011-06-17*** empty log message ***gdbadmin1-1/+1
2011-06-17daily updateAlan Modra1-1/+1
2011-06-16Suport x32 gcore.H.J. Lu3-59/+174
2011-06-16 H.J. Lu <hongjiu.lu@intel.com> * elf64-x86-64.c: Include <stdarg.h> and CORE_HEADER if CORE_HEADER is defined. (elf_x86_64_write_core_note): New. (elf_backend_write_core_note): Likewise. * hosts/x86-64linux.h (uint64_t): New. (user_regsx32_struct): Likewise. (elf_gregx32_t): Likewise. (ELF_NGREGX32): Likewise. (elf_gregsetx32_t): Likewise. (elf_prstatusx32): Likewise. (prstatusx32_t): Likewise. (user_fpregs32_struct): Removed. (user_fpxregs32_struct): Likewise. (user32): Likewise. (elf_fpregset32_t): Likewise. (elf_fpxregset32_t): Likewise. (prgregset32_t): Likewise. (prfpregset32_t): Likewise.
2011-06-16 * symtab.cc (Warnings::issue_warning): Don't warn if relocationIan Lance Taylor2-0/+11
occurs in same object.
2011-06-16Support x32 core dump.H.J. Lu2-0/+27
2011-06-16 H.J. Lu <hongjiu.lu@intel.com> * elf64-x86-64.c (elf_x86_64_grok_prstatus): Support x32. (elf_x86_64_grok_psinfo): Likewise.
2011-06-16 * dwarf-mode.el (dwarf-do-insert-substructure): CallTom Tromey2-2/+8
expand-file-name. (dwarf-do-refresh): Likewise.
2011-06-16 * elf.c (elf_find_function): Fail if not provided with a symbolNick Clifton2-0/+8
table.
2011-06-162011-06-16 Tristan Gingold <gingold@adacore.com>Tristan Gingold3-1/+8
* python/py-events.h (gdb_py_events): Make it extern. * python/py-evtregistry.c (gdb_py_events): Declare.
2011-06-162011-06-16 Hui Zhu <teawater@gmail.com>Hui Zhu2-1/+9
* remote.c (remote_trace_set_readonly_regions): Add check for remote_protocol_packets[PACKET_qXfer_traceframe_info].support before output warning.
2011-06-16 * ld-elfvers/vers2.ver: Don't assume any particular index forAlan Modra7-6/+16
version reference. * ld-elfvers/vers3.ver: Likewise. * ld-elfvers/vers19.ver: Likewise. * ld-elfvers/vers22.ver: Likewise. * ld-elfvers/vers27d4.ver: Likewise. * ld-elfvers/vers28c.ver: Likewise.
2011-06-16daily updateAlan Modra1-1/+1
2011-06-16*** empty log message ***gdbadmin1-1/+1
2011-06-15 * arm-linux-tdep.c: Include "auxv.h".Ulrich Weigand6-21/+155
(AT_HWCAP): Define. (ARM_LINUX_SIZEOF_VFP): Define. (arm_linux_supply_vfp): New function. (arm_linux_collect_vfp): Likewise. (arm_linux_regset_from_core_section): Handle .reg-arm-vfp sections. (arm_linux_fpa_regset_sections): New variable. (arm_linux_vfp_regset_sections): Likewise. (arm_linux_core_read_description): New function. (arm_linux_init_abi): Install arm_linux_core_read_description and arm_linux_fpa_regset_sections or arm_linux_vfp_regset_sections as appropriate for the architecture. * arm-tdep.h (struct gdbarch_tdep): Add member "vfpregset". (tdesc_arm_with_m): Declare. (tdesc_arm_with_iwmmxt): Likewise. (tdesc_arm_with_vfpv2): Likewise. (tdesc_arm_with_vfpv3): Likewise. (tdesc_arm_with_neon): Likewise. * arm-linux-nat.c: Move features/*.c includes ... * arm-tdep.c: ... here. * arm-linux-nat.c (arm_linux_read_description): Move initializing target description data structures ... * arm-tdep.c (_initialize_arm_tdep): ... here. * arm-linux-nat.c (HWCAP_VFP, HWCAP_IWMMXT, HWCAP_NEON, HWCAP_VFPv3, HWCAP_VFPv3D16): Move definitions ... * arm-linux-tdep.h: ... here.
2011-06-15include/elf/Ulrich Weigand7-0/+49
* common.h (NT_ARM_VFP): Define. bfd/ * elf-bfd.h (elfcore_write_arm_vfp): Add prototype. * elf.c (elfcore_grok_arm_vfp): New function. (elfcore_grok_note): Call it to handle NT_ARM_VFP notes. (elfcore_write_arm_vfp): New function. (elfcore_write_register_note): Call it to handle .reg-arm-vfp. binutils/ * readelf.c (get_note_type): Handle NT_ARM_VFP.