OSDN Git Service
brobecke [Fri, 1 Jul 2011 18:25:49 +0000 (18:25 +0000)]
variables whose type is a typedef to an array pointer
If we declare a type as being an access to array type, and then
declare a variable of that type, for instance:
type Some_Array is array [...];
type Array_Access is access all Some_Array;
Table : Array_Access := [...];
The variable "Table" may be defined in the debugging information
as being a typedef to the array pointer type. In the past, it was
defined directly as the array pointer type, but this has been changed
to make sure that the typedef type gets used.
If the typedef type wasn't used, it would allow the compiler to stop
emitting that typedef type when compiling with
-feliminate-unused-debug-types. The removal of this typedef would
be a problem, because GDB relies on the typedef to create symbols
for pointer types, and without it, we would no longer be able to
do "ptype array_access".
This patch helps prevent incorrect output or even crashes when that
extra typedef layer is used.
The testing is already mostly covered by arrayptr.exp, but I still
added a 'ptype' test, just for good measure.
gdb/ChangeLog: (Eric Botcazou)
* ada-lang.c (thin_descriptor_type): Deal with typedefs.
(decode_constrained_packed_array): Likewise.
(ada_evaluate_subexp) <TERNOP_SLICE>: Likewise.
gdb/testsuite/ChangeLog (Joel Brobecker):
* gdb.ada/arrayptr.exp: Add ptype test.
brobecke [Fri, 1 Jul 2011 18:25:33 +0000 (18:25 +0000)]
Fix date in testsuite/ChangeLog entry.
brobecke [Fri, 1 Jul 2011 18:25:15 +0000 (18:25 +0000)]
handle character-based enumeration typedefs
Consider the following type:
type Char_Enum_Type is ('A', 'B', 'C', 'D');
If the compiler generates a Char_Enum_Type typedef in the debugging
information, the debugger fails in the following case:
(gdb) p Char_Enum_Type'('B')
$1 = 66
For our type, the underlying value of 'B' is actually 1, not 66
(ASCII 'B'). We are failing this case because we were not handling
typedef to enum types before. This patch fixes this.
gdb/ChangeLog:
* ada-exp.y (convert_char_literal): Handle typedef types.
gdb/testsuite/ChangeLog:
* gdb.ada/char_enum: New testcase.
brobecke [Fri, 1 Jul 2011 18:24:48 +0000 (18:24 +0000)]
Document ada_remove_trailing_digits more
gdb/ChangeLog:
* ada-lang.c (ada_remove_trailing_digits): Expand documentation.
brobecke [Fri, 1 Jul 2011 18:24:38 +0000 (18:24 +0000)]
[libiberty/filename_cmp] Darwin has case-insensitive filesystems
include/ChangeLog:
* filenames.h (HAVE_CASE_INSENSITIVE_FILE_SYSTEM): Define
on Darwin, as well as on the systems that use a DOS-like
filesystem.
libiberty/ChangeLog:
* filename_cmp.c (filename_cmp, filename_ncmp): Add handling of
HAVE_CASE_INSENSITIVE_FILE_SYSTEM.
jkratoch [Fri, 1 Jul 2011 17:30:47 +0000 (17:30 +0000)]
merge from gcc
libiberty/
PR debug/49408
* cp-demangle.c (d_print_comp): Suppress argument list for function
references by the '&' unary operator. Keep also already processed
variant without the argument list. Suppress argument list types for
function call used in an expression.
* testsuite/demangle-expected: Fix excessive argument list types in
`test for typed function in decltype'. New testcase for no argument
list types printed. 3 new testcases for function references by the
'&' unary operator..
eweddington [Fri, 1 Jul 2011 17:14:03 +0000 (17:14 +0000)]
2011-07-01 Eric B. Weddington <eric.weddington@atmel.com>
* avr.h (AVR_ISA_AVR6): Remove AVR_ISA_SPMX as it was actually
a duplicate of AVR_ISA_SPM.
qiyao [Fri, 1 Jul 2011 16:42:41 +0000 (16:42 +0000)]
2011-07-02 Yao Qi <yao@codesourcery.com>
* gdb.base/dump.exp (capture_pointer_with_type): New.
Get value from address instead of name.
Start GDB once, and do `dump' and `restore'
tests together.
nickc [Fri, 1 Jul 2011 16:11:25 +0000 (16:11 +0000)]
PR binutils/12329
* avr-dis.c (avr_operand): Fix disassembly of ELPM, LPM and SPM
insns using post-increment addressing.
* avr.h (AVR_ISA_AVR6): Fix typo, adding AVR_ISA_SPMX.
nickc [Fri, 1 Jul 2011 15:02:20 +0000 (15:02 +0000)]
PR binutils/12325
* doc/binutils.texi (ar cmdline): Document --target, --version and
--help command line options.
corinna [Fri, 1 Jul 2011 12:45:25 +0000 (12:45 +0000)]
* include/sys/param.h (NGROUPS): Redefine as NGROUPS_MAX.
(MAXHOSTNAMELEN): Redefine with same value as MAX_HOSTNAME_LEN. Change
comment.
(MAXPATHLEN): Improve comment.
(MAXSYMLINKS): Define and add comment.
nickc [Fri, 1 Jul 2011 12:15:17 +0000 (12:15 +0000)]
PR sim/12737
* sim/arm/iwmmxt/wcmpgt.cgs: Remove expectation of failure.
* sim/arm/iwmmxt/wmac.cgs: Remove expectation of failure.
* sim/arm/iwmmxt/wsra.cgs: Remove expectation of failure.
* sim/arm/xscale/blx.cgs: Remove expectation of failure.
nickc [Fri, 1 Jul 2011 12:12:16 +0000 (12:12 +0000)]
PR sim/12737
* iwmmxt.c (WCMPGT): Sign extend 32-bit values before performing a
signed compare.
(WMAC): Extend computed result before adding to result register.
(WRSA): Sign extend 32-bit values before shifting.
corinna [Fri, 1 Jul 2011 11:23:43 +0000 (11:23 +0000)]
* fhandler.cc (fhandler_base::open): Move NFS-specific code into the
code block handling FH_FS stuff.
amodra [Fri, 1 Jul 2011 07:49:04 +0000 (07:49 +0000)]
* elf32-ppc.c (ppc_elf_copy_indirect_symbol): Don't look at
dyn relocs when called to copy flags for a weak sym.
* elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Likewise.
(ppc64_elf_merge_private_bfd_data): Delete.
(bfd_elf64_bfd_merge_private_bfd_data): Define as
_bfd_generic_verify_endian_match.
hjl [Fri, 1 Jul 2011 01:34:35 +0000 (01:34 +0000)]
Update rorxS.
2011-06-30 H.J. Lu <hongjiu.lu@intel.com>
* i386-dis.c (vex_len_table): Update rorxS.
vapier [Fri, 1 Jul 2011 00:19:25 +0000 (00:19 +0000)]
gdb: tests: set remotetimeout to gdb_load_timeout for remote targets
Rather than relying on the default remotetimeout value (which might be
too small for some slower devices), use the existing gdb_load_timeout
config option to set it.
This adds two new helpers for getting/setting the remotetimout to keep
the new logic simple.
Signed-off-by: Jie Zhang <jie.zhang@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
gdbadmin [Fri, 1 Jul 2011 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
amodra [Fri, 1 Jul 2011 00:00:05 +0000 (00:00 +0000)]
daily update
bernds [Thu, 30 Jun 2011 21:41:04 +0000 (21:41 +0000)]
* binutils-all/objcopy.exp (strip_test, strip_executable):
On ELF targets, test that OS/ABI is preserved.
(copy_setup): Do test on tic6x-*-uclinux.
bernds [Thu, 30 Jun 2011 21:36:09 +0000 (21:36 +0000)]
* bfd/elf32-tic6x.c (elf32_tic6x_set_osabi): Also set it if
link_info is NULL.
tromey [Thu, 30 Jun 2011 19:29:54 +0000 (19:29 +0000)]
* varobj.c (varobj_create): Call do_cleanups on early exit path.
* valops.c (find_overload_match): Call do_cleanups on early exit
path.
* solib.c (solib_find): Call do_cleanups on early exit path.
tromey [Thu, 30 Jun 2011 18:48:18 +0000 (18:48 +0000)]
* symfile-mem.c (symbol_file_add_from_memory): Call do_cleanups.
* solib-svr4.c (open_symbol_file_object): Call do_cleanups on all
return paths. Defer final do_cleanups until last return.
* arm-tdep.c (arm_exidx_new_objfile): Make null cleanup after
early return.
tromey [Thu, 30 Jun 2011 17:01:26 +0000 (17:01 +0000)]
* Makefile.in (SUBDIR_MI_CFLAGS): Don't add -DMI_OUT=1.
hjl [Thu, 30 Jun 2011 15:44:52 +0000 (15:44 +0000)]
Fix rorx in BMI2.
gas/testsuite/
2011-06-30 H.J. Lu <hongjiu.lu@intel.com>
AVX Programming Reference (June, 2011)
* gas/i386/bmi2.s: Correct rorx tests.
* gas/i386/x86-64-bmi2.s: Likewise.
* gas/i386/bmi2-intel.d: Updated.
* gas/i386/bmi2.d: Likewise.
* gas/i386/x86-64-bmi2-intel.d: Likewise.
* gas/i386/x86-64-bmi2.d: Likewise.
opcodes/
2011-06-30 H.J. Lu <hongjiu.lu@intel.com>
AVX Programming Reference (June, 2011)
* i386-dis.c (vex_len_table): Correct rorxS.
* i386-opc.tbl: Correct rorx.
* i386-tbl.h: Regenerated.
nickc [Thu, 30 Jun 2011 15:08:16 +0000 (15:08 +0000)]
PR binutils/12558
* ar.c (main): When asked to move members in an archive that is
being created, ignore the move request.
corinna [Thu, 30 Jun 2011 14:04:51 +0000 (14:04 +0000)]
* dtable.cc (fh_oom): Remove.
(fh_calloc): Remove.
(cnew): Redefine to handle NULL returns from cmalloc.
(build_fh_name): Accommodate new definition of cnew. Remove unneeded
test for fh_oom.
(fh_alloc): Ditto.
corinna [Thu, 30 Jun 2011 13:55:56 +0000 (13:55 +0000)]
* fhandler_console.cc (fhandler_console::read): Add comment.
(fhandler_console::input_tcsetattr): Don't set ENABLE_PROCESSED_INPUT
if IGNBRK flag is set.
nickc [Thu, 30 Jun 2011 13:42:44 +0000 (13:42 +0000)]
* gas/arm/addthumb2err.s: New test file.
* gas/arm/addthumb2err.d: Test control file.
* gas/arm/addthumb2err.l: Expected error messages.
* config/tc-arm.c (do_t_add_sub): Only allow LSL shifts of less
than 4 in Thumb mode.
nickc [Thu, 30 Jun 2011 13:07:21 +0000 (13:07 +0000)]
PR gas/12931
* gas/arm/blx-bad.d: Add exrta nop at end of disassembly.
* gas/arm/inst-po-be.d: Add exrta nop at end of disassembly.
* gas/arm/inst-po.d: Add exrta nop at end of disassembly.
nickc [Thu, 30 Jun 2011 13:05:03 +0000 (13:05 +0000)]
PR 12848
* gas/arm/thumb-b-bad.s: New test.
* gas/arm/thumb-b-bad.d: Test control file.
* gas/arm/thumb-b-bad.l: Expected error output.
nickc [Thu, 30 Jun 2011 12:52:57 +0000 (12:52 +0000)]
PR gas/12848
* config/tc-arm.c (BAD_RANGE): New error message define.
(md_apply_fix): Use it.
Fix range check for thumb branch instructions.
corinna [Thu, 30 Jun 2011 09:37:35 +0000 (09:37 +0000)]
* dtable.cc (fh_oom): New static fhandler storage.
(fh_calloc): New static function. Add a comment to explain why this
is needed.
(cnew): Call fh_calloc as placement argument.
(build_fh_name): Check return code from cnew against address of
fh_oom to test for out of memory condition.
(fh_alloc): Ditto.
(build_fh_pc): Avoid a crash due to useing a NULL fhandler.
* pipe.cc (fhandler_pipe::create): Check if build_fh_dev returned a
valid pointer before using it.
aburgess [Thu, 30 Jun 2011 09:00:53 +0000 (09:00 +0000)]
sourceware.org/ml/gdb-patches/2011-06/msg00444.html
Add myself to the write after approval list.
aburgess [Thu, 30 Jun 2011 08:53:38 +0000 (08:53 +0000)]
sourceware.org/ml/gdb-patches/2011-06/msg00442.html
Don't compile c++ tests for platforms that don't support c++.
ian [Thu, 30 Jun 2011 00:50:13 +0000 (00:50 +0000)]
PR gold/12629
* object.cc (Sized_relobj_file::layout_section): Change shdr
parameter to be const.
(Sized_relobj_file::layout_eh_frame_section): New function, broken
out of do_layout.
(Sized_relobj_file::do_layout): Defer .eh_frame sections if
appropriate. Call layout_eh_frame_section.
(Sized_relobj_file::do_layout_deferred_sections): Handle .eh_frame
sections.
* object.h (class Sized_relobj_file): Update declarations.
gdbadmin [Thu, 30 Jun 2011 00:00:32 +0000 (00:00 +0000)]
*** empty log message ***
amodra [Thu, 30 Jun 2011 00:00:05 +0000 (00:00 +0000)]
daily update
jkratoch [Wed, 29 Jun 2011 22:19:24 +0000 (22:19 +0000)]
gdb/
Disable epilogue unwinders on recent GCCs.
* amd64-tdep.c (amd64_in_function_epilogue_p): New variable symtab,
initialize it, return 0 on EPILOGUE_UNWIND_VALID.
* dwarf2read.c (process_full_comp_unit): Initialize
EPILOGUE_UNWIND_VALID.
* i386-tdep.c (i386_in_function_epilogue_p): New variable symtab,
initialize it, return 0 on EPILOGUE_UNWIND_VALID.
* symtab.h (struct symtab): New field epilogue_unwind_valid.
jkratoch [Wed, 29 Jun 2011 22:17:57 +0000 (22:17 +0000)]
gdb/
Code cleanup - reformatting.
* dwarf2read.c (producer_is_gcc_ge_4_0): Rename to ...
(producer_is_gcc_ge_4): ... here, change the return value.
(process_full_comp_unit): New variable gcc_4_minor, adjust the value
interpretation.
jkratoch [Wed, 29 Jun 2011 22:05:14 +0000 (22:05 +0000)]
gdb/
Fix non-only rename list for Fortran modules import.
* cp-namespace.c (cp_scan_for_anonymous_namespaces): Adjust the
cp_add_using_directive caller.
(cp_add_using_directive): New parameter excludes, describe it. New
variables ix and param. Compare if also excludes match. Allocate NEW
with variable size, initialize EXCLUDES there.
(cp_lookup_symbol_imports): New variable excludep, test
current->EXCLUDES with it.
* cp-support.h: Include vec.h.
(struct using_direct): New field excludes, describe it.
(DEF_VEC_P (const_char_ptr)): New.
(cp_add_using_directive): New parameter excludes.
* defs.h (const_char_ptr): New typedef.
* dwarf2read.c (read_import_statement): New variables child_die,
excludes and cleanups, read in excludes.
(read_namespace): Adjust the cp_add_using_directive caller.
gdb/testsuite/
Fix non-only rename list for Fortran modules import.
* gdb.fortran/module.exp (print var_x, print var_y, print var_z): New
tests.
* gdb.fortran/module.f90 (module moduse): New.
(program module): use moduse, test var_x, var_y and var_z.
jkratoch [Wed, 29 Jun 2011 22:02:56 +0000 (22:02 +0000)]
gdb/
Code cleanup.
* cp-namespace.c (cp_add_using_directive): Turn positive comparison to
negative comparisons.
ian [Wed, 29 Jun 2011 21:57:51 +0000 (21:57 +0000)]
* script.cc (Token::integer_value): Accept trailing M/m/K/k
modifier.
(Lex::gather_token): Accept trailing M/m/K/k for integers.
ian [Wed, 29 Jun 2011 21:57:13 +0000 (21:57 +0000)]
* script.cc (Token::integer_value): Accept trailing M/m/K/k
modifier.
(Lex::gather_token): Accept trailing M/m/K/k for integers.
ian [Wed, 29 Jun 2011 21:39:19 +0000 (21:39 +0000)]
PR gold/12675
* object.cc (Sized_relobj_file::check_eh_frame_flags): Check for
SHT_X86_64_UNWIND.
* layout.cc (Layout::layout_eh_frame): Likewise.
ian [Wed, 29 Jun 2011 21:26:40 +0000 (21:26 +0000)]
PR gold/12695
* layout.cc (Layout::symtab_section_shndx): New function.
* layout.h (class Layout): Declare symtab_section_shndx.
* output.cc (Output_section::write_header): Call it.
rsandifo [Wed, 29 Jun 2011 21:05:29 +0000 (21:05 +0000)]
gas/
* config/tc-mips.c (append_method): New enum.
(can_swap_branch_p, get_append_method): New functions.
(append_insn): Use get_append_method to decide how the instruction
should be added.
jkratoch [Wed, 29 Jun 2011 20:51:10 +0000 (20:51 +0000)]
readline/
Avoid free from a signal handler.
* Makefile.in (xfree.o): Add readline.h.
* xfree.c: Include stdio.h and readline.h.
(xfree): Return on RL_STATE_SIGHANDLER.
* xmalloc.h (xfree): New definition.
rsandifo [Wed, 29 Jun 2011 20:48:10 +0000 (20:48 +0000)]
gas/
* config/tc-mips.c (append_insn): Remove bogus goto.
hjl [Wed, 29 Jun 2011 20:46:11 +0000 (20:46 +0000)]
Replace "index" with "i".
2011-06-29 H.J. Lu <hongjiu.lu@intel.com>
* tilegx-opc.c (find_opcode): Replace "index" with "i".
* tilepro-opc.c (find_opcode): Likewise.
rsandifo [Wed, 29 Jun 2011 20:46:09 +0000 (20:46 +0000)]
gas/
* config/tc-mips.c (append_insn): Always clear the history after an
unconditional branch.
rsandifo [Wed, 29 Jun 2011 20:42:47 +0000 (20:42 +0000)]
gas/
* config/tc-mips.c (find_altered_mips16_opcode): New function.
(append_insn): Use it.
opcodes/
* mips16-opc.c (jalrc, jrc): Move earlier in file.
rsandifo [Wed, 29 Jun 2011 20:38:59 +0000 (20:38 +0000)]
gas/
* config/tc-mips.c (insn_uses_reg): Delete.
(gpr_read_mask, gpr_write_mask): New functions.
(fpr_read_mask, fpr_write_mask): Likewise.
(insns_between, nops_for_vr4130, append_insn): Use them.
gas/testsuite/
* gas/mips/mips16-e.d, gas/mips/mips16-f.d,
gas/mips/mipsel16-e.d, gas/mips/mipsel16-f.d,
gas/mips/tmips16-e.d, gas/mips/tmips16-f.d,
gas/mips/tmipsel16-e.d, gas/mips/tmipsel16-f.d: Fix GPR mask.
* gas/mips/reginfo-1.s, gas/mips/reginfo-1a.d,
gas/mips/reginfo-1b.d: New tests.
* gas/mips/mips.exp: Run them.
rsandifo [Wed, 29 Jun 2011 20:35:04 +0000 (20:35 +0000)]
gas/
* config/tc-mips.c (md_mips_end): Call mips_emit_delays.
gas/testsuite/
* gas/mips/24k-triple-stores-9.d: Add -z to dump options and
explicitly match one nop.
* gas/mips/24k-triple-stores-10.d: Likewise.
* gas/mips/24k-triple-stores-11.d: Likewise.
* gas/mips/lifloat.d: Likewise.
* gas/mips/trunc.d: Likewise 1 extra nop.
* gas/mips/vr4111.d: Likewise 2 nops.
tromey [Wed, 29 Jun 2011 17:50:46 +0000 (17:50 +0000)]
PR testsuite/12040:
* gdb.fortran/array-element.exp: Use f90, not f77.
* gdb.fortran/complex.exp: Use f90, not f77.
* gdb.fortran/derived-type.exp: Use f90, not f77.
* gdb.fortran/library-module.exp: Use f90, not f77.
* gdb.fortran/logical.exp: Use f90, not f77.
* gdb.fortran/module.exp: Use f90, not f77.
* gdb.fortran/multi-dim.exp: Use f90, not f77.
* gdb.fortran/subarray.exp: Use f90, not f77.
tromey [Wed, 29 Jun 2011 17:29:59 +0000 (17:29 +0000)]
gdb
2011-06-29 André Pönitz <andre.poenitz@nokia.com>
* mi/mi-main.c (mi_cmd_list_features): Emit
breakpoint-notifications.
gdb/doc
* gdb.texinfo (GDB/MI Miscellaneous Commands): Document
breakpoint-notifications feature.
nickc [Wed, 29 Jun 2011 16:51:35 +0000 (16:51 +0000)]
* readelf.c (get_section_type_name): When displaying an unknown
section type display the hex value first on the assumption that
the full message will probably be truncated into a 15 character
field.
nickc [Wed, 29 Jun 2011 16:29:37 +0000 (16:29 +0000)]
PR gas/12931
* config/tc-arm.c (mapping_state): When changing to ARM or THUMB
state set the minimum required alignment of the section.
uweigand [Wed, 29 Jun 2011 16:28:22 +0000 (16:28 +0000)]
* gdb.texinfo (Target Description): Remove warning about
possibly unstable format.
tromey [Wed, 29 Jun 2011 15:32:39 +0000 (15:32 +0000)]
gdb
PR fortran/10036:
* valprint.h (generic_emit_char, generic_printstr): Declare.
* valprint.c (wchar_printable, append_string_as_wide)
(print_wchar): Move from c-lang.c.
(generic_emit_char): New function; mostly taken from c_emit_char.
(generic_printstr): New function; mostly taken from c_printstr.
* f-valprint.c (f_val_print) <TYPE_CODE_ARRAY>: Handle strings
represented as arrays.
<TYPE_CODE_CHAR>: Treat as TYPE_CODE_INT; recognize as character
type.
* f-typeprint.c (f_type_print_base) <TYPE_CODE_CHAR>: Treat
identically to TYPE_CODE_INT.
* f-lang.c (f_get_encoding): New function.
(f_emit_char): Use generic_emit_char.
(f_printchar): Replace comment.
(f_printstr): Use generic_printstr.
* dwarf2read.c (read_base_type) <DW_ATE_unsigned>: Handle Fortran
"character" types specially.
<DW_ATE_signed_char, DW_ATE_unsigned_char>: Make TYPE_CODE_CHAR
for Fortran.
* c-lang.c (wchar_printable, append_string_as_wide, print_wchar):
Move to valprint.c
(c_emit_char): Call generic_emit_char.
(c_printstr): Call generic_printstr.
gdb/testsuite
* gdb.fortran/charset.exp: New file.
* gdb.fortran/charset.f90: New file.
jjohnstn [Wed, 29 Jun 2011 15:32:09 +0000 (15:32 +0000)]
2011-06-29 Jeff Johnston <jjohnstn@redhat.com>
* arm/Makefile.in: Add $CFLAGS to compile commands for specified .o targets.
gary [Wed, 29 Jun 2011 15:20:33 +0000 (15:20 +0000)]
gdb/
* breakpoint.c (bpstat_what): Removed duplicated case.
tromey [Wed, 29 Jun 2011 14:44:45 +0000 (14:44 +0000)]
PR testsuite/12040:
* lib/future.exp: New file, mostly extracted from ada.exp.
Rewrote compatibility code to use rename.
(gdb_find_gfortran): New proc.
(gdb_default_target_compile): Refresh from dejagnu; plus a pending
gfortran patch.
* lib/ada.exp (gdb_find_gnatmake, gdb_default_target_compile):
Move to future.exp.
* lib/gdb.exp: Always load future.exp.
ian [Wed, 29 Jun 2011 14:43:08 +0000 (14:43 +0000)]
PR gold/12818
* symtab.cc (Symbol::should_add_dynsym_entry): Don't add undefined
symbols which are not used in a relocation.
gingold [Wed, 29 Jun 2011 11:12:24 +0000 (11:12 +0000)]
2011-06-29 Tristan Gingold <gingold@adacore.com>
* config/tc-i386.c (i386_mach): Convert to ISO-C.
(md_begin, pe_directive_secrel, md_estimate_size_before_relax): Ditto.
(md_convert_frag, md_apply_fix, md_undefined_symbol): Ditto.
(md_section_align, tc_gen_reloc): Ditto.
ian [Wed, 29 Jun 2011 00:39:54 +0000 (00:39 +0000)]
PR gold/12898
* layout.cc (Layout::segment_precedes): Don't crash if a linker
script create indistinguishable segments.
(Layout::set_segment_offsets): Use stable_sort when sorting
segments. Pass this to Compare_segments constructor.
* layout.h (class Layout): Make segment_precedes non-static.
(class Compare_segments): Change from struct to class. Add
layout_ field. Add constructor.
* script-sections.cc
(Script_sections::attach_sections_using_phdrs_clause): Rename
local orphan to is_orphan. Don't report failure to put empty
section in segment. On attachment failure, report name of
section, and attach to first PT_LOAD segment.
gdbadmin [Wed, 29 Jun 2011 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
amodra [Wed, 29 Jun 2011 00:00:05 +0000 (00:00 +0000)]
daily update
ian [Tue, 28 Jun 2011 23:12:30 +0000 (23:12 +0000)]
PR gold/12934
* target-select.cc (Target_selector::Target_selector): Add
emulation parameter. Change all callers.
(select_target_by_bfd_name): Rename from select_target_by_name.
Change all callers.
(select_target_by_emulation): New function.
(supported_emulation_names): New function.
* target-select.h (class Target_selector): Add emulation_ field.
Update declarations.
(Target_selector::recognize_by_bfd_name): Rename from
recognize_by_name. Change all callers.
(Target_selector::supported_bfd_names): Rename from
supported_names. Change all callers.
(Target_selector::recognize_by_emulation): New function.
(Target_selector::supported_emulations): New function.
(Target_selector::emulation): New function.
(Target_selector::do_recognize_by_bfd_name): Rename from
do_recognize_by_name. Change all callers.
(Target_selector::do_supported_bfd_names): Rename from
do_supported_names. Change all callers.
(Target_selector::do_recognize_by_emulation): New function.
(Target_selector::do_supported_emulations): New function.
(select_target_by_bfd_name): Change name in declaration.
(select_target_by_emulation): Declare.
(supported_emulation_names): Declare.
* parameters.cc (parameters_force_valid_target): Try to find
target based on emulation from -m option.
* options.h (class General_options): Change doc string for -m.
* options.cc (help): Print emulations.
(General_options::parse_V): Likewise.
* freebsd.h (Target_selector_freebsd::Target_selector_freebsd):
Add emulation parameter. Change all callers.
ian [Tue, 28 Jun 2011 22:25:13 +0000 (22:25 +0000)]
* target.h (class Target): Add osabi_ field.
(Target::osabi): New function.
(Target::set_osabi): New function.
(Target::Target): Initialize osabi_.
(Target::do_adjust_elf_header): Make pure virtual.
(Sized_target::do_adjust_elf_header): Declare.
* target.cc (Sized_target::do_adjust_elf_header): New function.
(class Sized_target): Instantiate all versions.
* freebsd.h (class Target_freebsd): Remove.
(Target_selector_freebsd::do_recognize): Call set_osabi on
Target.
(Target_selector_freebsd::do_recognize_by_name): Likewise.
(Target_selector_freebsd::set_osabi): Remove.
* i386.cc (class Target_i386): Inherit from Sized_target rather
than Target_freebsd.
* x86_64.cc (class Target_x86_64): Likewise.
ian [Tue, 28 Jun 2011 21:15:42 +0000 (21:15 +0000)]
* target.h (Target::can_check_for_function_pointers): Rewrite.
Make non-virtual.
(Target::can_icf_inline_merge_sections): Likewise.
(Target::section_may_have_icf_unsafe_poineters): Likewise.
(Target::Target_info): Add can_icf_inline_merge_sections field.
(Target::do_can_check_for_function_pointers): New virtual
function.
(Target::do_section_may_have_icf_unsafe_pointers): Likewise.
* arm.cc (Target_arm::do_can_check_for_function_pointers): Rename
from can_check_for_function_pointers, move in file.
(Target_arm::do_section_may_have_icf_unsafe_pointers): Rename from
section_may_have_icf_unsafe_poineters, move in file.
(Target_arm::arm_info): Initialize can_icf_inline_merge_sections.
* i386.cc (Target_i386::do_can_check_for_function_pointers):
Rename from can_check_for_function_pointers, move in file.
(Target_i386::can_icf_inline_merge_sections): Remove.
(Target_i386::i386_info): Initialize
can_icf_inline_merge_sections.
* powerpc.cc (Target_powerpc::powerpc_info) [all versions]:
Initialize can_icf_inline_merge_sections.
* sparc.cc (Target_sparc::sparc_info) [both version]: Likewise.
* x86_64.cc (Target_x86_64::do_can_check_for_function_pointers):
Rename from can_check_for_function_pointers, move in file.
(Target_x86_64::can_icf_inline_merge_sections): Remove.
(Target_x86_64::x86_64_info): Initialize
can_icf_inline_merge_sections.
* testsuite/testfile.cc (Target_test::test_target_info):
Likewise.
* icf.cc (get_section_contents): Correct formatting.
gingold [Tue, 28 Jun 2011 13:33:32 +0000 (13:33 +0000)]
2011-06-28 Tristan Gingold <gingold@adacore.com>
* config/tc-alpha.c (s_alpha_pdesc): Fix indentation. Do not
generate dummy fix.
tromey [Tue, 28 Jun 2011 13:09:10 +0000 (13:09 +0000)]
* python/python-internal.h (PY_SSIZE_T_CLEAN): Define.
corinna [Tue, 28 Jun 2011 10:21:34 +0000 (10:21 +0000)]
* fhandler_process.cc (heap_info::fill_if_match): Rename info to
note that this heap is a Windows heap.
(format_process_maps): Print info about application heap.
gingold [Tue, 28 Jun 2011 09:23:52 +0000 (09:23 +0000)]
2011-06-28 Tristan Gingold <gingold@adacore.com>
* config/tc-alpha.c (load_expression): Use alloca instead of xmalloc.
(emit_jsrjmp): Ditto.
(tc_gen_reloc): Ditto.
gingold [Tue, 28 Jun 2011 08:39:37 +0000 (08:39 +0000)]
2011-06-28 Tristan Gingold <gingold@adacore.com>
* vms-alpha.c (vms_private_data_struct): Make vms_linkage_index
unsigned int.
(_bfd_vms_write_etir): Write linkage index from reloc.
qiyao [Tue, 28 Jun 2011 08:36:18 +0000 (08:36 +0000)]
2011-06-28 Yao Qi <yao@codesourcery.com>
* gdb.cp/exception.cc: Don't include iostream.
(bar): Remove print statement.
(catcher): New.
(main): Remove print statements. Call function catcher.
* gdb.cp/exception.exp : Don't match inferior's output in regexp.
Set breakpoint on catcher, and check the value of parameter.
gingold [Tue, 28 Jun 2011 07:45:51 +0000 (07:45 +0000)]
2011-06-28 Fawzi Mohamed <fawzi.mohamed@nokia.com>
* mach-o.c (bfd_mach_o_read_command): Also ignore
BFD_MACH_O_LC_ROUTINES_64.
gingold [Tue, 28 Jun 2011 07:40:14 +0000 (07:40 +0000)]
2011-06-28 Tristan Gingold <gingold@adacore.com>
* config/tc-alpha.c (alpha_evax_proc_hash): Remove.
(alpha_evax_proc_data): New variable.
(s_alpha_ent): Prevent nested function. Remove has_insert call.
(s_alpha_pdesc): Do not call demand_empty_rest_of_line in case of
error. Do not search in the hash table. Check if match with .ent.
(s_alpha_name): Remove unused variable.
(md_begin): Remove initialization of alpha_evax_proc_hash.
ian [Tue, 28 Jun 2011 05:39:45 +0000 (05:39 +0000)]
* symtab.cc (Symbol::versioned_name): New function.
(Symbol_table::add_to_final_symtab): Use versioned_name when
appropriate.
(Symbol_table::sized_write_symbol): Likewise.
* symtab.h (class Symbol): Declare versioned_name.
* stringpool.h (class Stringpool_template): Add variant of add
which takes a std::basic_string.
* testsuite/Makefile.am (check_PROGRAMS): Add ver_test_12.
(ver_test_12_SOURCES, ver_test_12_DEPENDENCIES): New variables.
(ver_test_12_LDFLAGS, ver_test_12_LDADD): New variables.
(ver_test_12.o): New target.
* testsuite/Makefile.in: Rebuild.
amodra [Tue, 28 Jun 2011 00:00:06 +0000 (00:00 +0000)]
daily update
gdbadmin [Tue, 28 Jun 2011 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
tromey [Mon, 27 Jun 2011 19:21:48 +0000 (19:21 +0000)]
* valops.c (find_overload_match): Call do_cleanups before early
return.
* top.c (execute_command): Call do_cleanups before early return.
(command_loop): Likewise.
* stack.c (backtrace_command): Make a null cleanup early. Don't
conditionally call do_cleanups.
* python/py-value.c (TRY_CATCH): Move cleanup handling into
TRY_CATCH.
* python/py-breakpoint.c (gdbpy_breakpoint_has_py_cond): Rearrange
so cleanups are always run.
* mi/mi-cmd-var.c (mi_cmd_var_delete): Reset old_cleanups.
* findcmd.c (parse_find_args): Call do_cleanups on early return
path.
* dbxread.c (elfstab_build_psymtabs): Make a null cleanup early.
Don't conditionally call do_cleanups.
* cli/cli-script.c (execute_user_command): Initialize 'old_chain'
later.
dougkwan [Mon, 27 Jun 2011 17:53:31 +0000 (17:53 +0000)]
2011-06-27 Doug Kwan <dougkwan@google.com>
* arm.cc (Arm_relocate_functions::thm_jump8,
Arm_relocate_functions::thm_jump11): Use a wider signed
type to compute offset.
* testsuite/Makefile.am: Add new tests arm_thm_jump11 and
arm_thm_jump8.
* testsuite/Makefile.in: Regenerate.
* testsuite/arm_branch_in_range.sh: Check test results of
arm_thm_jump11 and arm_thm_jump8.
* testsuite/arm_thm_jump11.s: New test source file.
* testsuite/arm_thm_jump11.t: New linker script.
* testsuite/arm_thm_jump8.s: New test source file.
* testsuite/arm_thm_jump8.t: New linker script.
ebotcazou [Mon, 27 Jun 2011 17:00:37 +0000 (17:00 +0000)]
* MAINTAINERS (Write After Approval): Use default email address.
brobecke [Mon, 27 Jun 2011 16:38:27 +0000 (16:38 +0000)]
Add Eric Botcazou to the list of `Write After Approval' contributors
* MAINTAINERS (Write After Approval): Add Eric Botcazou.
brobecke [Mon, 27 Jun 2011 16:35:59 +0000 (16:35 +0000)]
Add support for single register window model on SPARC
2011-06-27 Eric Botcazou <ebotcazou@adacore.com>
* sparc-tdep.h (struct sparc_frame_cache): Add frame_offset,
saved_regs_mask and copied_regs_mask fields.
(sparc_record_save_insn): New prototype.
* sparc-tdep.c (sparc_alloc_frame_cache): Initialize the new fields.
(sparc_record_save_insn): New function.
(sparc_analyze_prologue): Add head comment. Recognize store insns
of call-saved registers. Use OFFSET consistently. Recognize flat
frames and cache their settings.
(sparc32_skip_prologue): Handle flat frames.
(sparc_frame_cache): Add frame_offset to the base address.
(sparc32_frame_cache): Adjust to new frame description.
(sparc32_frame_prev_register): Likewise.
* sparc64-tdep.c (sparc64_frame_prev_register): Likewise.
* sparc-sol2-tdep.c (sparc32_sol2_sigtramp_frame_cache): Likewise.
* sparc64-sol2-tdep.c (sparc64_sol2_sigtramp_frame_cache): Likewise.
* sparcnbsd-tdep.c (sparc32nbsd_sigcontext_frame_cache): Force the
frame by calling sparc_record_save_insn.
* sparc64nbsd-tdep.c (sparc64nbsd_sigcontext_frame_cache): Likewise.
* sparcobsd-tdep.c (sparc32obsd_sigtramp_frame_cache): Likewise.
* sparc64obsd-tdep.c (sparc64obsd_frame_cache): Likewise.
nickc [Mon, 27 Jun 2011 15:02:55 +0000 (15:02 +0000)]
* ld-elf/elf.exp: Exlcude all v850 targets from note-3 test.
gingold [Mon, 27 Jun 2011 14:08:13 +0000 (14:08 +0000)]
2011-06-27 Tristan Gingold <gingold@adacore.com>
* config/tc-alpha.c (add_to_link_pool): Remove basesym parameter.
Locally declare basesym. Add comments. Do not set literal_pool_size.
(load_expression): Adjust call to add_to_link_pool.
(s_alpha_pdesc): Define pdesc symbol using dot.
Do not set literal_pool_size.
(s_alpha_end): Use NULL instead of 0.
amodra [Mon, 27 Jun 2011 13:34:21 +0000 (13:34 +0000)]
* ld-elf/elf.exp: Exclude more targets from note-3 test.
gingold [Mon, 27 Jun 2011 13:03:14 +0000 (13:03 +0000)]
2011-06-27 Tristan Gingold <gingold@adacore.com>
* vms-alpha.c (_bfd_vms_write_etir): Use 'section' to get current
section target index.
corinna [Mon, 27 Jun 2011 10:13:10 +0000 (10:13 +0000)]
* libc/time/mktime.c (mktime): Lock global timezone info while
accessing it.
nickc [Mon, 27 Jun 2011 10:09:00 +0000 (10:09 +0000)]
* cisco-core.c (cisco_core_little_vec): Add initialization of
match_priority field.
gingold [Mon, 27 Jun 2011 10:03:41 +0000 (10:03 +0000)]
2011-06-27 Tristan Gingold <gingold@adacore.com>
* config/obj-evax.c (evax_frob_file_before_adjust): Add comments.
Fix style.
* config/obj-evax.h (struct alpha_linkage_fixups): Remove seg
field. Add comments.
(obj_symbol_type, object_headers, OBJ_SYMFIELD_TYPE): Remove
gingold [Mon, 27 Jun 2011 08:41:34 +0000 (08:41 +0000)]
2011-06-27 Tristan Gingold <gingold@adacore.com>
* dwarf2read.c (struct dwarf2_section_info): Replace was_mmapped
field by map_addr and map_len.
(dwarf2_read_section): Adjust for the new bfd_mmap api.
(munmap_section_buffer): Likewise.
gingold [Mon, 27 Jun 2011 08:40:55 +0000 (08:40 +0000)]
2011-06-27 Tristan Gingold <gingold@adacore.com>
* cache.c: Include bfd_stdint.h.
(cache_bmmap): Change profile. Return region start and size.
* bfdio.c (struct bfd_iovec): Change bmmap profile.
(bfd_mmap): Change profile and adjust. Update comment.
(memory_bmmap): Change profile.
* opncls.c (opncls_bmmap): Change profile.
* vms-lib.c (vms_lib_bmmap): Likewise.
* libbfd.h: Regenerate.
* bfd-in2.h: Regenerate.
gingold [Mon, 27 Jun 2011 08:24:19 +0000 (08:24 +0000)]
2011-06-27 Tristan Gingold <gingold@adacore.com>
* vms-misc.c (vms_time_to_time_t): Adjust overflow detection.
Add comment.
gdbadmin [Mon, 27 Jun 2011 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
amodra [Mon, 27 Jun 2011 00:00:05 +0000 (00:00 +0000)]
daily update
rsandifo [Sun, 26 Jun 2011 09:19:17 +0000 (09:19 +0000)]
Remove previous patch, committed in error.