Tom Tromey [Fri, 25 Mar 2011 17:13:12 +0000 (17:13 +0000)]
* linespec.c (symbol_found): Restore line-based result for
non-LOC_LABEL symbols.
Nick Clifton [Fri, 25 Mar 2011 17:09:08 +0000 (17:09 +0000)]
* strings.c (print_strings): Plug memory leak.
Nick Clifton [Fri, 25 Mar 2011 17:06:53 +0000 (17:06 +0000)]
* coffcode.h (coff_set_alignment_hook): Check return of bfd_seek.
DJ Delorie [Fri, 25 Mar 2011 16:38:27 +0000 (16:38 +0000)]
merge from gcc
Tom Tromey [Fri, 25 Mar 2011 15:45:38 +0000 (15:45 +0000)]
2011-03-24 Mark Wielaard <mjw@redhat.com>
* dwarf2.h (dwarf_form): Remove deprecated DW_FORM_sig8 define.
Tristan Gingold [Fri, 25 Mar 2011 15:39:03 +0000 (15:39 +0000)]
2011-03-25 Tristan Gingold <gingold@adacore.com>
* vms-alpha.c (_bfd_vms_find_nearest_dst_line): Allow the use
of find_nearest_line on object files.
Tristan Gingold [Fri, 25 Mar 2011 15:31:27 +0000 (15:31 +0000)]
2011-03-25 Tristan Gingold <gingold@adacore.com>
* vms-alpha.c (evax_section_flags): Make $CODE$ section read-only.
Minor reordering.
(alpha_vms_create_eisd_for_section): Make code sections read-only.
Nick Clifton [Fri, 25 Mar 2011 15:15:52 +0000 (15:15 +0000)]
Replace bfd_vma type and analog types by dwarf_vma and analogs.
Use dwarf specific print functions to display these type values.
* dwarf.h (dwarf_signed_vma): New type;
(DWARF2_External_LineInfo): Replace bfd_vma by dwarf_vma.
(DWARF2_External_PubNames): Likewise.
(DWARF2_External_CompUnit): Likewise.
(DWARF2_External_ARange): Likewise.
(read_leb128): Change return type to dwarf_vma.
* dwarf.c (print_dwarf_vma): Use __MINGW32__ conditional and
check byte_size values.
(dwarf_vmatoa): Change parameter type to dwarf_vma.
(dwarf_svmatoa): New static function.
(read_leb128): Change return type to dwarf_vma.
(read_sleb128): New static function.
(struct State_Machine_Registers): Change address field type to
dwarf_vma.
(process_extended_line_op): Adapt to type changes.
(fetch_indirect_string): Likewise.
(idisplay_block): Likewise.
(decode_location_expression): Likewise.
(read_and_display_attr_value): Likewise.
(process_debug_info): Likewise.
(display_debug_lines_raw): Likewise.
(display_debug_lines_decoded): Likewise.
(SLEB macro): Use new read_sleb128 function.
Joseph Myers [Fri, 25 Mar 2011 13:08:19 +0000 (13:08 +0000)]
* configure.ac (native_only): Remove.
(i[[3456789]]86-*-msdosdjgpp*): Don't disable expect dejagnu
send-pr uudecode guile gnuserv on host.
(x86_64-*-mingw*): Don't disable expect dejagnu autoconf automake
send-pr rcs guile perl texinfo libtool on host.
(i[[3456789]]86-*-mingw32*): Don't disable expect dejagnu autoconf
automake send-pr rcs guile perl texinfo libtool on host.
(*-*-cygwin*, *-*-netbsd*): Remove host cases.
(*-*-kaos*): Don't disable target-examples target-gperf on target.
(alpha*-dec-osf*): Don't disable fileutils on target.
(sh*-*-pe|mips*-*-pe|*arm-wince-pe): Don't disable target-examples
texinfo send-pr expect dejagnu on target.
(arm-*-elf* | arm*-*-eabi*, arm*-*-linux-gnueabi): Don't disable
target-qthreads on target.
(hppa*-hp-hpux11*, hppa*-*-*): Don't disable shellutils on target.
(ia64*-*-elf*, ia64*-*-*vms*): Don't disable mmalloc on target.
(i[[3456789]]86-w64-mingw*, i[[3456789]]86-*-mingw*,
x86_64-*-mingw*): Don't disable expect on target.
(*-*-cygwin*): Don't disable target-gperf on target.
(powerpc*-*-winnt* | powerpc*-*-pe*): Don't disable make expect
gnuserv on target.
(powerpcle-*-solaris*): Don't disable make expect gnuserv on
target.
* configure: Regenerate.
Andrew Burgess [Fri, 25 Mar 2011 13:08:11 +0000 (13:08 +0000)]
Move environment modifications into gdb_init so it's done just once per
test, and clear the GREP_OPTIONS environment variable. See,
http://sourceware.org/ml/gdb-patches/2011-03/msg00886.html
Joseph Myers [Fri, 25 Mar 2011 11:36:41 +0000 (11:36 +0000)]
* configure.ac (target_tools): Remove target-groff.
(native_only): Remove target-groff.
(hppa*64*-*-*): Don't disable byacc.
(i[[3456789]]86-*-mingw32*): Remove commented-out noconfigdirs
setting.
(*-*-kaos*): Don't skip target-librx and target-groff.
(*-*-netware*): Don't skip target-libmudflap.
(*-*-tpf*): Don't skip target-libmudflap.
(sh*-*-pe|mips*-*-pe|*arm-wince-pe): Don't condition configured
directories on the host.
(ia64*-*-*vms*): Don't skip tix.
(sh-*-* | sh64-*-*): Don't condition skipped directories on the
host.
* configure: Regenerate.
Kai Tietz [Fri, 25 Mar 2011 09:57:37 +0000 (09:57 +0000)]
2011-03-25 Kai Tietz <ktietz@redhat.com>
* tui/tui-source.c (tui_set_source_content): Use filename_cmp
instead of strcmp for comparison.
(tui_source_is_displayed): Likewise.
* tui/tui-winsource.c (tui_update_breakpoint_info): Likewise.
Mike Frysinger [Fri, 25 Mar 2011 00:13:57 +0000 (00:13 +0000)]
sim: bfin: add hw tracing to gpio/sic port events
Makes it a lot easier to find out what's going on with interrupt lines
if the ports have tracing output.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Fri, 25 Mar 2011 00:13:23 +0000 (00:13 +0000)]
sim: bfin: fix GPIO logic bugs when processing events
We need the DIR bit cleared, not set, in order for the pin to be treated
as an input.
When looking up the data value, we need to shift the "level" value over by
"my_port" rather than "bit" as the latter has already been shifted over.
We also should normalize the "level" coming in from the outside worlds to
the set of {0,1} since those are the only values that matter to GPIOs.
We need the BOTH bit set, not cleared, in order for the pin to trigger
on both edges.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Fri, 25 Mar 2011 00:12:47 +0000 (00:12 +0000)]
sim: bfin: fix clear/set/toggle GPIO handling
The clear/set/toggle MMRs aren't backed by "real" data; they implicitly
perform bit operations on the associated data register. So when we go
to process writes to them, we need to adjust the pointer accordingly so
that the actual backing data is modified.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
gdbadmin [Fri, 25 Mar 2011 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Thu, 24 Mar 2011 23:00:06 +0000 (23:00 +0000)]
daily update
Tom Tromey [Thu, 24 Mar 2011 20:35:08 +0000 (20:35 +0000)]
2011-03-24 Mark Wielaard <mjw@redhat.com>
* dwarf2read.c (lookup_signatured_type): Use DW_FORM_ref_sig8 in
complaint.
(skip_one_die): Use DW_FORM_ref_sig8, not DW_FORM_sig8.
(find_partial_die_in_comp_unit): Likewise in comment.
(read_attribute_value): Likewise.
(lookup_die_type): Likewise.
(dwarf_form_name): Likewise.
(dump_die_shallow): Likewise.
(follow_die_ref_or_sig): Likewise.
Tom Tromey [Thu, 24 Mar 2011 20:25:17 +0000 (20:25 +0000)]
gdb
PR breakpoints/11816:
* linespec.c (decode_line_1): Parse `function:label' linespecs.
(decode_compound): Update.
(find_function_symbol): New function.
(decode_dollar): Update.
(decode_label): Add 'function_symbol' parameter. Handle
function-relative labels.
(decode_variable): Update.
(symbol_found): Add 'function_symbol' parameter. Use label's PC,
not its line. Set `special_display' and canonical name for
labels.
gdb/doc
* gdb.texinfo (Specify Location): Document `function:label'
linespec.
gdb/testsuite
* gdb.base/label.exp: Use `main:there' linespec. Add re-running
test.
Tom Tromey [Thu, 24 Mar 2011 19:47:17 +0000 (19:47 +0000)]
* linespec.h (struct linespec_result) <special_display>: New
field.
* breakpoint.h (struct breakpoint) <display_canonical>: New
field.
* breakpoint.c (print_breakpoint_location): Respect
display_canonical.
(create_breakpoint_sal): Add 'display_canonical' parameter.
(create_breakpoints_sal): Update.
(create_breakpoint): Update.
Tom Tromey [Thu, 24 Mar 2011 19:39:49 +0000 (19:39 +0000)]
* symtab.c (decode_line_spec): Update.
* linespec.c (build_canonical_line_spec): Change type of
'canonical'.
(decode_line_2, decode_line_1, decode_objc, decode_compound)
(find_method, decode_all_digits, decode_dollar, decode_label)
(symbol_found): Likewise.
(init_linespec_result): New function.
* breakpoint.c (struct captured_parse_breakpoint_args)
<canonical_p>: New field, replaces addr_string_p.
(create_breakpoints_sal): Add 'canonical' parameter, replacing
'addr_string'.
(parse_breakpoint_sals): Likewise.
(do_captured_parse_breakpoint): Update.
(create_breakpoint): Use struct linespec_result.
(until_break_command): Update.
(breakpoint_re_set_one): Update.
(decode_line_spec_1): Update.
* linespec.h (struct linespec_result): New.
(init_linespec_result): Declare.
Paolo Bonzini [Thu, 24 Mar 2011 17:50:32 +0000 (17:50 +0000)]
2011-03-24 Paolo Bonzini <pbonzini@redhat.com>
* configure.ac: Remove references to mt-mep, mt-netware,
mt-wince.
* Makefile.def: Add all-utils soft dependencies.
* Makefile.tpl: Remove GDB_NLM_DEPS.
* configure: Regenerate.
* Makefile.in: Regenerate.
config:
2011-03-24 Paolo Bonzini <pbonzini@redhat.com>
* mt-mep: Remove, obsolete.
* mt-netware: Remove, obsolete.
* mt-wince: Remove, obsolete.
* mt-v810: Remove, unused.
Paolo Bonzini [Thu, 24 Mar 2011 17:31:20 +0000 (17:31 +0000)]
2011-03-24 Paolo Bonzini <bonzini@gnu.org>
Sync from GCC:
2011-03-24 Paolo Bonzini <bonzini@gnu.org>
* configure.ac: Remove empty cases.
* configure: Regenerate.
2011-03-24 Paolo Bonzini <bonzini@gnu.org>
* Makefile.def: Add dependency from termcap to gdb.
* Makefile.in: Regenerate.
2011-03-24 Paolo Bonzini <bonzini@gnu.org>
* configure.ac: Remove all mentions of mh-sysv4 and mh-solaris.
* configure: Regenerate.
* Makefile.def: Remove all mentions of X11_FLAGS_TO_PASS.
* Makefile.tpl: Likewise.
* Makefile.in: Regenerate.
2011-03-24 Paolo Bonzini <bonzini@gnu.org>
* configure.ac: Remove all mentions of tentative_cc.
* configure: Regenerate.
2011-03-16 Jack Howarth <howarth@bromo.med.uc.edu>
PR lto/48086
* configure.ac: Re-enable LTO on *-apple-darwin9.
* configure: Regenerate.
config:
2011-03-24 Paolo Bonzini <bonzini@gnu.org>
Sync from GCC:
2011-03-24 Paolo Bonzini <bonzini@gnu.org>
* mh-cygwin: Remove obsolete variables and dependencies.
2011-03-24 Paolo Bonzini <bonzini@gnu.org>
* mh-sysv4: Remove.
* mh-solaris: Remove.
2011-03-24 Paolo Bonzini <bonzini@gnu.org>
* mh-sysv4: Remove AR_CFLAGS.
Eric B. Weddington [Thu, 24 Mar 2011 17:03:03 +0000 (17:03 +0000)]
2011-03-24 Eric B. Weddington <eric.weddington@atmel.com>
* config/tc-avr.c (mcu_types): Add new devices: atmega325pa,
atmega3250pa, atmega3290pa, atmega16hvbrevb, atmega32hvbrevb,
at90pwm161.
* doc/c-avr.texi: Document new device names.
Paolo Bonzini [Thu, 24 Mar 2011 16:55:11 +0000 (16:55 +0000)]
2011-03-24 Paolo Bonzini <bonzini@gnu.org>
* mh-sysv4: Remove AR_CFLAGS.
Joseph Myers [Thu, 24 Mar 2011 16:52:11 +0000 (16:52 +0000)]
* configure.ac (i[[3456789]]86-*-vsta, i[[3456789]]86-*-go32*,
i[[3456789]]86-*-beos*, powerpc-*-beos*, m68k-hp-hpux*,
m68k-apollo-sysv*, m68k-apollo-bsd*, m88k-dg-dgux*,
m88k-harris-cxux*, m88k-motorola-sysv*, mips*-dec-ultrix*,
mips*-nec-sysv4*, mips*-sgi-irix4*, mips*-*-sysv4*, mips*-*-sysv*,
i370-ibm-opened*, i[[3456789]]86-*-sysv5*, i[[3456789]]86-*-dgux*,
i[[3456789]]86-ncr-sysv4.3*, i[[3456789]]86-ncr-sysv4*,
i[[3456789]]86-*-sco3.2v5*, i[[3456789]]86-*-sco*,
i[[3456789]]86-*-udk*, vax-*-ultrix2*, m68k-sun-sunos*,
hppa*-*-hiux*, *-*-hiux*, rs6000-*-lynxos*, *-*-sysv4*,
*-*-rhapsody*): Remove host cases.
* configure: Regenerate.
config:
* mh-cxux, mh-decstation, mh-dgux386, mh-lynxrs6k, mh-ncr3000,
mh-necv4, mh-sco, mh-sysv5: Remove.
Joseph Myers [Thu, 24 Mar 2011 13:25:45 +0000 (13:25 +0000)]
* configure.ac (ppc*-*-pe): Remove host case.
(strongarm-*-coff | xscale-*-coff, strongarm-*-elf* |
xscale-*-elf*, thumb-*-coff, thumb-*-elf, thumb-*-pe, ep9312-*-elf
| ep9312-*-coff, parisc*64*-*-linux*, ppc*-*-pe): Remove target
cases.
* configure: Regenerate.
Pedro Alves [Thu, 24 Mar 2011 11:22:03 +0000 (11:22 +0000)]
* regcache.c (regcache_raw_read): If the target didn't supply a
given raw register, mark it as unavailable.
Joseph Myers [Thu, 24 Mar 2011 11:13:32 +0000 (11:13 +0000)]
* config.sub: Update to version 2011-03-23.
Mike Frysinger [Thu, 24 Mar 2011 06:17:47 +0000 (06:17 +0000)]
gas: blackfin: reject invalid register destinations for vector add/sub
The destination registers with vector add/sub insns must be different,
so make sure gas rejects attempt to write these.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Thu, 24 Mar 2011 05:27:39 +0000 (05:27 +0000)]
opcodes: blackfin: ignore (M) on MAC0-only dsp mac funcs
If the MAC1 part of the insn is disabled, then the (M) flag is ignored.
Rather than include it in the decode, move the MM clearing to the MAC0
portion of the code.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Thu, 24 Mar 2011 04:34:33 +0000 (04:34 +0000)]
gas: blackfin: test all 16bit insns
The current 16bit insn test doesn't actually cover all illegal insns
since it stops at 0xa000 instead of 0xc000. But rather than address
that, replace it with a test that covers all 16bit insns.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Thu, 24 Mar 2011 04:25:25 +0000 (04:25 +0000)]
gas: blackfin: catch invalid dest dregs in dsp mult insns
While we were catching a few mismatches in vectorized dsp mult insns,
the error we displayed was misleading. Once we fix that up, we can
convert previously dead code into proper checking for destination
dreg matching.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Thu, 24 Mar 2011 04:20:10 +0000 (04:20 +0000)]
gas: blackfin: catch invalid register combinations with SEARCH/BITMUX
The destination registers for SEARCH cannot be the same. Same rule
for the source registers for BITMUX.
Signed-off-by: Mike Frsyinger <vapier@gentoo.org>
Mike Frysinger [Thu, 24 Mar 2011 03:18:17 +0000 (03:18 +0000)]
sim: bfin: document SIC limitation
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Thu, 24 Mar 2011 03:17:14 +0000 (03:17 +0000)]
sim: bfin: fix inverted W1C logic
When I originally wrote the w1c helper funcs, I used it in a few places.
Then I forgot how it worked and when I later documented it, I described
the 3rd arg in the exact opposite way it is actually used. This error
propagated to a bunch of devices registers that were not explicitly
tested (a bunch of the devices are stubs which merely exist to say "no
device is connected" to make device drivers happy).
So once the documentation is unscrewed, fix all of the broken call sites.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Thu, 24 Mar 2011 03:16:50 +0000 (03:16 +0000)]
sim: bfin: define more UART LSR bits
We'll need these bits in an upcoming patch, so map out the whole
LSR MMR now.
Fix up indentation style while we're here.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Thu, 24 Mar 2011 03:16:22 +0000 (03:16 +0000)]
sim: bfin: fix typo in TWI stat reg
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Thu, 24 Mar 2011 03:14:20 +0000 (03:14 +0000)]
sim: bfin: update VIT_MAX behavior to match hardware when Acc.X bits are set
The Blackfin PRM says that the top 8 bits of the accumulator must be
cleared when using the VIT_MAX insn, so the sim has followed this spec.
Matching the hardware behavior though when the high bits are not cleared
is easy to do and doesn't break existing behavior, so go for it.
Signed-off-by: Robin Getz <robin.getz@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Thu, 24 Mar 2011 03:13:32 +0000 (03:13 +0000)]
sim: bfin: always do 16bit sign extension with the SEARCH insn
The Blackfin PRM does not cover this case, but the hardware is clear: even
if the search criteria is not met (and thus a new 16bit value is loaded up
into the accumulator), the accumulator undergoes 16bit sign extension. So
simply reload the low signed 16bits in that case.
Signed-off-by: Robin Getz <robin.getz@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Thu, 24 Mar 2011 03:12:16 +0000 (03:12 +0000)]
sim: bfin: update AV and AC ASTAT bits with acc negation
The Acc=-Acc insn can overflow or carry with edge values, so make sure
we update the ASTAT bits accordingly to match the hardware. Also fix
a thinko where we always updated AC0 even when working with A1 regs.
Signed-off-by: Robin Getz <robin.getz@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Thu, 24 Mar 2011 03:11:08 +0000 (03:11 +0000)]
sim: bfin: fix thinko in SIC pin encoding
When encoding the SIC/pin info into unique input port ids, I used bases
of 100 when I meant to use 0x100. Rather than simply fix the decoding
math in the different functions, create a few helper macros to simplify
the SIC/pin encoding and decoding steps. This makes the resulting tables
nice & clear.
And now that pins are clear, the 533 and 537 port_event handlers may
easily be merged into one.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Thu, 24 Mar 2011 03:08:15 +0000 (03:08 +0000)]
sim: bfin: allow byteop[123]p src regs to be the same
The hardware allows the byteop[123]p insns to use the same src reg pair,
so remove the combination check in the sim.
Signed-off-by: Robin Getz <robin.getz@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Thu, 24 Mar 2011 03:07:33 +0000 (03:07 +0000)]
sim: bfin: fix thinko in bfin_gpio bus addresses
The bus addresses have to be valid numbers, so 'g' and 'h' won't work.
Oddly, the common code silently ignored this which is why I didn't notice
in the first place.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
gdbadmin [Thu, 24 Mar 2011 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Wed, 23 Mar 2011 23:00:05 +0000 (23:00 +0000)]
daily update
Joseph Myers [Wed, 23 Mar 2011 19:53:06 +0000 (19:53 +0000)]
* lexsup.c (parse_args): Only set report_plugin_symbols if plugins
are enabled. Mark level as possibly unused.
Kai Tietz [Wed, 23 Mar 2011 18:23:56 +0000 (18:23 +0000)]
2011-03-23 Kai Tietz <ktietz@redhat.com>
* breakpoint.c (clear_command): Use filename_cmp
instead of strcmp for comparison.
* buildsym.c (watch_main_source_file_lossage): Likewise.
(patch_subfile_names): Use IS_DIR_SEPARATOR instead of
checking just for slash.
* dbxread.c (read_dbx_symtab): Use lbasename instead of
strrchr and filename_cmp instead of strcmp for filenames.
(add_old_header_file): Use filename_cmp
instead of strcmp for comparison.
* exec.c (exec_set_section_address): Likewise.
* macrotab.c (macro_lookup_inclusion): Likewise.
(macro_lookup_inclusion): Likewise.
* elfread.c (_initialize_elfread): Likewise.
(elfstab_offset_sections): Likewise.
(elfstab_offset_sections): Use lbasename instead of
strrchr.
* mdebugread.c (parse_partial_symbols): Likewise.
(arse_partial_symbols): Use filename_(n)cmp instead of
str(n)cmp for comparison.
* minsyms.c (lookup_minimal_symbol): Likewise.
* psymtab.c (read_psymtabs_with_filename): Likewise.
* solib.c (solib_read_symbols): Likewise.
(reload_shared_libraries_1): Likewise.
* symmisc.c (maintenance_print_symbols): Likewise.
* symfile.c (separate_debug_file_exists): Likewise.
(reread_symbols): Likewise.
(find_separate_debug_file_by_debuglink): Likewise.
* remote-fileio.c (remote_fileio_func_rename): Likewise.
* source.c (add_path): Likewise.
* symtab.c (filename_seen): Likewise.
(file_matches): Likewise.
(print_symbol_info): Likewise.
(maybe_add_partial_symtab_filename): Likewise.
(make_source_files_completion_list): Likewise.
* xml-syscall.c (init_sysinfo): Likewise.
* windows-nat.c (_initialize_check_for_gdb_ini): Use
IS_DIR_SEPARATOR for checking for trailing path separator.
Alan Modra [Wed, 23 Mar 2011 15:25:06 +0000 (15:25 +0000)]
bfd/
* elf32-ppc.c (ppc_elf_tls_optimize): Catch more cases where
old-style __tls_get_addr calls without marker relocs don't match
their arg setup insn one for one. If such mismatches are found
report the reloc and don't do any tls optimization.
* elf64-ppc.c (ppc64_elf_tls_optimize): Likewise.
ld/testsuite/
* ld-powerpc/tlsmark.s: Delete non-optimizable section.
* ld-powerpc/tlsmark32.s: Likewise.
* ld-powerpc/tlsmark.d: Adjust to suit.
* ld-powerpc/tlsmark32.d: Likewise.
* ld-powerpc/tlsopt1.d, * ld-powerpc/tlsopt1.s: New.
* ld-powerpc/tlsopt2.d, * ld-powerpc/tlsopt2.s: New.
* ld-powerpc/tlsopt3.d, * ld-powerpc/tlsopt3.s: New.
* ld-powerpc/tlsopt4.d, * ld-powerpc/tlsopt4.s: New.
* ld-powerpc/tlsopt1_32.d, * ld-powerpc/tlsopt1_32.s: New.
* ld-powerpc/tlsopt2_32.d, * ld-powerpc/tlsopt2_32.s: New.
* ld-powerpc/tlsopt3_32.d, * ld-powerpc/tlsopt3_32.s: New.
* ld-powerpc/tlsopt4_32.d, * ld-powerpc/tlsopt4_32.s: New.
* ld-powerpc/powerpc.exp: Run new tests.
Eric B. Weddington [Wed, 23 Mar 2011 15:02:06 +0000 (15:02 +0000)]
2011-03-23 Eric B. Weddington <eric.weddington@atmel.com>
* config/tc-avr.c (mcu_types): Add new xmega devices: atxmega64a1u,
atxmega128a1u, atxmega16x1, atxmega32x1, atxmega128b1, atxmega256a3bu.
* doc/c-avr.texi: Document new device names.
Rafael Ávila de Espíndola [Wed, 23 Mar 2011 14:13:27 +0000 (14:13 +0000)]
2010-03-23 Rafael Ávila de Espíndola <respindola@mozilla.com>
* plugin.cc (get_view): New.
(Plugin::load): Pass get_view to the plugin.
(Plugin_manager::get_view): New.
Rafael Ávila de Espíndola [Wed, 23 Mar 2011 14:09:48 +0000 (14:09 +0000)]
2010-03-23 Rafael Ávila de Espíndola <respindola@mozilla.com>
* plugin-api.h (ld_plugin_get_view): New.
(ld_plugin_tag): Add LDPT_GET_VIEW.
(ld_plugin_tv): Add tv_get_view.
gdbadmin [Wed, 23 Mar 2011 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Tue, 22 Mar 2011 23:00:06 +0000 (23:00 +0000)]
daily update
Jan Kratochvil [Tue, 22 Mar 2011 21:06:34 +0000 (21:06 +0000)]
gdb/
* dwarf2expr.c (execute_stack_op): Handle DW_OP_GNU_entry_value. New
label abort_expression.
* dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Handle
DWARF_VALUE_OPTIMIZED_OUT.
gdb/testsuite/
* gdb.dwarf2/dw2-entry-value-main.c: New file.
* gdb.dwarf2/dw2-entry-value.S: New file.
* gdb.dwarf2/dw2-entry-value.exp: New file.
Eric B. Weddington [Tue, 22 Mar 2011 20:58:30 +0000 (20:58 +0000)]
Regenerate bfd-in2.h.
Joseph Myers [Tue, 22 Mar 2011 20:04:36 +0000 (20:04 +0000)]
* configure.ac (arm-semi-aof, crx-*-*, parisc*-*-linux*,
i370-*-opened*, i[[3456789]]86-moss-msdos | i[[3456789]]86-*-moss*
| i[[3456789]]86-*-uwin*, mcore-*-pe*): Remove empty cases.
* configure: Regenerate.
Joseph Myers [Tue, 22 Mar 2011 20:01:13 +0000 (20:01 +0000)]
* config-ml.in: Don't handle arc-*-elf*.
* configure.ac (arc-*-*, crx-*-*, i[[3456789]]86-*-pe,
m68hc11-*-*|m6811-*-*|m68hc12-*-*|m6812-*-*, mcore-*-pe*): Don't
handle GCC libraries.
* configure: Regenerate.
Eric B. Weddington [Tue, 22 Mar 2011 18:10:48 +0000 (18:10 +0000)]
/bfd:
2011-03-22 Eric B. Weddington <eric.weddington@atmel.com>
* archures.c: Add AVR XMEGA architecture information.
* cpu-avr.c (arch_info_struct): Likewise.
* elf32-avr.c (bfd_elf_avr_final_write_processing): Likewise.
(elf32_avr_object_p): Likewise.
/gas:
2011-03-22 Eric B. Weddington <eric.weddington@atmel.com>
* config/tc-avr.c (struct avr_opcodes_s): Add opcode field.
(AVR_INSN): Change definition to match.
(avr_opcodes): Likewise, change to match.
(mcu_types): Add XMEGA architecture names and new XMEGA device names.
(md_show_usage): Add XMEGA architecture names.
(avr_operand): Add 'E' constraint for DES instruction of XMEGA devices.
Add support for SPM Z+ instruction.
* doc/c-avr.texi: Add documentation for XMEGA architectures and
devices.
/include/opcode:
2011-03-22 Eric B. Weddington <eric.weddington@atmel.com>
* avr.h (AVR_ISA_SPMX,AVR_ISA_DES,AVR_ISA_M256,AVR_ISA_XMEGA):
New instruction set flags.
(AVR_INSN): Add new instructions for SPM Z+, DES for XMEGA.
/ld:
2011-03-22 Eric B. Weddington <eric.weddington@atmel.com>
* Makefile.am (ALL_EMULATION_SOURCES): Add AVR XMEGA architectures.
(eavrxmega?.c): Likewise.
* configure.tgt (targ_extra_emuls): Likewise.
* emulparams/avrxmega1.sh: New file.
* emulparams/avrxmega2.sh: Likewise.
* emulparams/avrxmega3.sh: Likewise.
* emulparams/avrxmega4.sh: Likewise.
* emulparams/avrxmega5.sh: Likewise.
* emulparams/avrxmega6.sh: Likewise.
* emulparams/avrxmega7.sh: Likewise.
* emultempl/avrelf.em (avr_elf_${EMULATION_NAME}_before_allocation):
Add avrxmega6, avrxmega7 to list of architectures for no stubs.
/opcodes:
2011-03-22 Eric B. Weddington <eric.weddington@atmel.com>
* avr-dis.c (avr_operand): Add opcode_str parameter. Check for
post-increment to support LPM Z+ instruction. Add support for 'E'
constraint for DES instruction.
(print_insn_avr): Adjust calls to avr_operand. Rename variable.
Jan Kratochvil [Tue, 22 Mar 2011 17:35:22 +0000 (17:35 +0000)]
gdb/
Code cleanup.
* c-typeprint.c (c_type_print_args): Change parameter show_artificial
to linkage_name. Invert its value. Update the function comment.
(c_type_print_varspec_suffix): Invert it at the caller.
* dwarf2read.c (dwarf2_compute_name): Invert it at the caller.
Pedro Alves [Tue, 22 Mar 2011 14:39:40 +0000 (14:39 +0000)]
* infcmd.c (post_create_inferior): Ignore NOT_AVAILABLE_ERROR
errors when reading the `stop_pc'.
* printcmd.c (pc_prefix): Use get_frame_pc_if_available instead of
get_frame_pc.
Phil Muldoon [Tue, 22 Mar 2011 10:04:23 +0000 (10:04 +0000)]
2011-03-22 Phil Muldoon <pmuldoon@redhat.com>
* NEWS: Document gdb.Write stream keyword.
Jan Kratochvil [Tue, 22 Mar 2011 09:50:42 +0000 (09:50 +0000)]
gdb/
Revert:
2011-03-21 Jan Kratochvil <jan.kratochvil@redhat.com>
* dwarf2read.c (producer_is_gxx_lt_4_6): New function.
(dwarf2_add_field): Fix new_field->accessibility for
cu->header.version >= 3 while verifying also producer_is_gxx_lt_4_6.
Phil Muldoon [Tue, 22 Mar 2011 09:38:16 +0000 (09:38 +0000)]
2011-03-21 Phil Muldoon <pmuldoon@redhat.com>
PR python/12183
* python/py-function.c (fnpy_call): Treat GdbErrors differently to
other error classes. Do not print stack trace.
2011-03-21 Phil Muldoon <pmuldoon@redhat.com>
PR python/12183
* gdb.python/py-function.exp: Add GdbError tests.
Ian Lance Taylor [Tue, 22 Mar 2011 00:19:14 +0000 (00:19 +0000)]
* testsuite/relro_test.sh: Fail if dc is not present.
Ian Lance Taylor [Tue, 22 Mar 2011 00:18:26 +0000 (00:18 +0000)]
Fix copyright.
gdbadmin [Tue, 22 Mar 2011 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Ian Lance Taylor [Mon, 21 Mar 2011 23:11:45 +0000 (23:11 +0000)]
* testsuite/final_layout.sh: Rewrite to not use dc.
Alan Modra [Mon, 21 Mar 2011 23:00:06 +0000 (23:00 +0000)]
daily update
Kevin Buettner [Mon, 21 Mar 2011 22:06:55 +0000 (22:06 +0000)]
* gennltvals.sh: Search sys/_default_fcntl.h, in addition to
fcntl.h and sys/fcntl.h, for constants.
* nltvals.def: Regenerate.
* sim-io.c (sim_io_stat, sim_io_fstat): New functions.
* sim-io.h (sys/types.h, sys/stat.h): Include.
(sim_io_stat, sim_io_fstat): Declare.
Kevin Buettner [Mon, 21 Mar 2011 22:05:56 +0000 (22:05 +0000)]
* simops (OP_10007E0): Update errno handling as most traps
do not invoke the host's functionality directly. Invoke
sim_io_stat() instead of stat() for implementing TARGET_SYS_stat.
Implement TARGET_SYS_fstat, TARGET_SYS_rename, and TARGET_SYS_unlink.
Sriraman Tallam [Mon, 21 Mar 2011 20:55:33 +0000 (20:55 +0000)]
* testsuite/icf_safe_so_test.sh: Add #!/bin/sh to start.
Change == to -eq.
* testsuite/icf_string_merge_test.sh: Add #!/bin/sh to start.
* testsuite/icf_safe_test.sh: Add #!/bin/sh to start.
Change == to -eq.
* testsuite/icf_sht_rel_addend_test.sh: Add #!/bin/sh to start.
* testsuite/icf_preemptible_functions_test.sh: Add #!/bin/sh to start.
Eric B. Weddington [Mon, 21 Mar 2011 20:25:56 +0000 (20:25 +0000)]
2011-03-21 Eric B. Weddington <eric.weddington@atmel.com>
* config/tc-avr.c (md_show_usage): Add "Assembler" text to output.
Eric B. Weddington [Mon, 21 Mar 2011 20:07:42 +0000 (20:07 +0000)]
2011-03-21 Eric B. Weddington <eric.weddington@atmel.com>
* scripttempl/avr.sc: Add fuse, lock, and signature memory regions.
Jan Kratochvil [Mon, 21 Mar 2011 20:07:08 +0000 (20:07 +0000)]
gdb/
* dwarf2read.c (producer_is_gxx_lt_4_6): New function.
(dwarf2_add_field): Fix new_field->accessibility for
cu->header.version >= 3 while verifying also producer_is_gxx_lt_4_6.
Ulrich Weigand [Mon, 21 Mar 2011 17:28:04 +0000 (17:28 +0000)]
* arm-tdep.c (arm_analyze_prologue): Do not abort parsing when
encountering a load via a non-SP register.
Ulrich Weigand [Mon, 21 Mar 2011 17:23:05 +0000 (17:23 +0000)]
* tramp-frame.c (tramp_frame_prepend_unwinder): Set stop_reason
field in returned unwinder.
Joel Brobecker [Mon, 21 Mar 2011 14:43:37 +0000 (14:43 +0000)]
undefined newexpr->gdbarch field in ada-lang.c:replace_operator_with_call
2011-03-20 Jan Kratochvil <jan.kratochvil@redhat.com>
* ada-lang.c (replace_operator_with_call): Copy also GDBARCH.
Joel Brobecker [Mon, 21 Mar 2011 14:43:14 +0000 (14:43 +0000)]
use xzalloc in ada-lang.c:replace_operator_with_call
This is to make sure that we cannot have a field with an undefined
value (currently, we are not setting the gdbarch).
gdb/ChangeLog:
* ada-lang.c (replace_operator_with_call): Use xzalloc instead
of xmalloc.
Rainer Orth [Mon, 21 Mar 2011 13:03:34 +0000 (13:03 +0000)]
PR bootstrap/48120:
* configure.ac (pwllib): Use LIBS instead of LDFLAGS.
Add -lstdc++ -lm to LIBS.
* configure: Regenerate.
gdbadmin [Mon, 21 Mar 2011 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sun, 20 Mar 2011 23:00:06 +0000 (23:00 +0000)]
daily update
gdbadmin [Sun, 20 Mar 2011 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sat, 19 Mar 2011 23:00:06 +0000 (23:00 +0000)]
daily update
gdbadmin [Sat, 19 Mar 2011 00:00:32 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Fri, 18 Mar 2011 23:00:06 +0000 (23:00 +0000)]
daily update
Pedro Alves [Fri, 18 Mar 2011 18:52:32 +0000 (18:52 +0000)]
gdb/
* frame.c (frame_unwind_register): Throw an error if unwinding the
register failed.
* get_prev_frame_1 (get_prev_frame_1): Ask the unwinder if there's
an unwind stop reason.
(frame_stop_reason_string): Handle UNWIND_UNAVAILABLE.
* frame.h (enum unwind_stop_reason) <UNWIND_OUTERMOST,
UNWIND_UNAVAILABLE>: New.
* inline-frame.c (inline_frame_unwind): Install
default_frame_unwind_stop_reason.
* frame-unwind.c: Include "exceptions.h".
(frame_unwind_find_by_frame): Swallow NOT_AVAILABLE_ERROR errors.
(default_frame_unwind_stop_reason): New.
* frame-unwind.h (frame_unwind_stop_reason_ftype): New typedef.
(default_frame_unwind_stop_reason): Declare.
(struct frame_unwind) <stop_reason>: New function pointer.
* dummy-frame.c: Install default_frame_unwind_stop_reason.
* dwarf2-frame.c: Include exceptions.h.
(struct dwarf2_frame_cache) <unavailable_retaddr>: New field.
(dwarf2_frame_cache): Swallow NOT_AVAILABLE_ERROR errors when
computing the CFA. If such an error was thrown, set
unavailable_retaddr.
(dwarf2_frame_unwind_stop_reason): New.
(dwarf2_frame_this_id): Don't build a frame id if the CFA was
unavailable.
(dwarf2_frame_unwind): Install dwarf2_frame_unwind_stop_reason.
(dwarf2_signal_frame_unwind): Ditto.
* amd64-tdep.c: Include "exceptions.h".
(struct amd64_frame_cache): New field "base_p".
(amd64_init_frame_cache): Clear it.
(amd64_frame_cache_1): New, factored out from amd64_frame_cache.
Avoid reading registers with functions that throw if the register
is not necessary to compute the frame base.
(amd64_frame_cache): Reimplement wrapping amd64_frame_cache_1, and
swallowing NOT_AVAILABLE_ERROR.
(amd64_frame_unwind_stop_reason): New.
(amd64_frame_this_id): Don't build a frame id if the frame base
was unavailable.
(amd64_frame_unwind): Install amd64_frame_unwind_stop_reason.
(amd64_sigtramp_frame_cache): Swallow NOT_AVAILABLE_ERROR, and set
base_p if the frame base was computable.
(amd64_sigtramp_frame_unwind_stop_reason): New.
(amd64_sigtramp_frame_this_id): Don't build a frame id if the
frame base was unavailable.
(amd64_sigtramp_frame_unwind): Install
amd64_sigtramp_frame_unwind_stop_reason.
(amd64_epilogue_frame_cache): Swallow NOT_AVAILABLE_ERROR, and set
base_p if the frame base was computable.
(amd64_epilogue_frame_unwind_stop_reason): New.
(amd64_epilogue_frame_this_id): Don't build a frame id if the
frame base was unavailable.
(amd64_epilogue_frame_unwind): Install
amd64_epilogue_frame_unwind_stop_reason.
* i386-tdep.c: Include "exceptions.h".
(struct i386_frame_cache): New field "base_p".
(i386_init_frame_cache): Clear it.
(i386_frame_cache_1): New, factored out from amd64_frame_cache.
Avoid reading registers with functions that throw if the register
is not necessary to compute the frame base.
(i386_frame_cache): Reimplement wrapping amd64_frame_cache_1, and
swallowing NOT_AVAILABLE_ERROR.
(i386_frame_unwind_stop_reason): New.
(i386_frame_this_id): Don't build a frame id if the frame base was
unavailable.
(i386_frame_prev_register): Handle unavailable SP.
(i386_frame_unwind): Install i386_frame_unwind_stop_reason.
(i386_epilogue_frame_cache): Swallow NOT_AVAILABLE_ERROR, and set
base_p if the frame base was computable.
(i386_epilogue_frame_unwind_stop_reason): New.
(i386_epilogue_frame_this_id): Don't build a frame id if the frame
base was unavailable.
(i386_epilogue_frame_unwind): Install
i386_epilogue_frame_unwind_stop_reason.
(i386_sigtramp_frame_cache): Swallow NOT_AVAILABLE_ERROR, and set
base_p if the frame base was computable.
(i386_sigtramp_frame_unwind_stop_reason): New.
(i386_sigtramp_frame_this_id): Don't build a frame id if the frame
base was unavailable.
(i386_sigtramp_frame_unwind): Install
i386_sigtramp_frame_unwind_stop_reason.
* sentinel-frame.c (sentinel_frame_prev_register): Use the value
type's size, not the register's.
(sentinel_frame_unwind): Install default_frame_unwind_stop_reason.
* alpha-mdebug-tdep.c (alpha_mdebug_frame_unwind): Install
default_frame_unwind_stop_reason.
* alpha-tdep.c (alpha_sigtramp_frame_unwind)
(alpha_heuristic_frame_unwind): Ditto.
* amd64obsd-tdep.c (amd64obsd_trapframe_unwind): Ditto.
* arm-tdep.c (arm_prologue_unwind, arm_stub_unwind): Ditto.
* avr-tdep.c (avr_frame_unwind): Ditto.
* cris-tdep.c (cris_sigtramp_frame_unwind, cris_frame_unwind):
Ditto.
* frv-linux-tdep.c (frv_linux_sigtramp_frame_unwind): Ditto.
* frv-tdep.c (frv_frame_unwind): Ditto.
* h8300-tdep.c (h8300_frame_unwind): Ditto.
* hppa-hpux-tdep.c (hppa_hpux_sigtramp_frame_unwind): Ditto.
* hppa-linux-tdep.c (hppa_linux_sigtramp_frame_unwind): Ditto.
* hppa-tdep.c (hppa_frame_unwind, hppa_fallback_frame_unwind)
(hppa_stub_frame_unwind): Ditto.
* i386obsd-tdep.c (i386obsd_trapframe_unwind): Ditto.
* ia64-tdep.c (ia64_frame_unwind, ia64_sigtramp_frame_unwind)
(ia64_libunwind_frame_unwind)
(ia64_libunwind_sigtramp_frame_unwind): Ditto.
* iq2000-tdep.c (iq2000_frame_unwind): Ditto.
* lm32-tdep.c (lm32_frame_unwind): Ditto.
* m32c-tdep.c (m32c_unwind): Ditto.
* m32r-linux-tdep.c (m32r_linux_sigtramp_frame_unwind): Ditto.
* m32r-tdep.c (m32r_frame_unwind): Ditto.
* m68hc11-tdep.c (m68hc11_frame_unwind): Ditto.
* m68k-tdep.c (m68k_frame_unwind): Ditto.
* m68klinux-tdep.c (m68k_linux_sigtramp_frame_unwind): Ditto.
* m88k-tdep.c (m88k_frame_unwind): Ditto.
* mep-tdep.c (mep_frame_unwind): Ditto.
* microblaze-tdep.c (microblaze_frame_unwind): Ditto.
* mips-tdep.c (mips_insn16_frame_unwind, mips_insn32_frame_unwind)
(mips_stub_frame_unwind): Ditto.
* mn10300-tdep.c (mn10300_frame_unwind): Ditto.
* moxie-tdep.c (moxie_frame_unwind): Ditto.
* mt-tdep.c (mt_frame_unwind): Ditto.
* ppc-linux-tdep.c (ppu2spu_unwind): Ditto.
* ppcobsd-tdep.c (ppcobsd_sigtramp_frame_unwind): Ditto.
* rs6000-tdep.c (rs6000_frame_unwind): Ditto.
* s390-tdep.c (s390_frame_unwind, s390_stub_frame_unwind)
(s390_sigtramp_frame_unwind): Ditto.
* score-tdep.c (score_prologue_unwind): Ditto.
* sh-tdep.c (sh_frame_unwind): Ditto.
* sh64-tdep.c (sh64_frame_unwind): Ditto.
* sparc-sol2-tdep.c (sparc32_sol2_sigtramp_frame_unwind): Ditto.
* sparc-tdep.c (sparc32_frame_unwind): Ditto.
* sparc64-sol2-tdep.c (sparc64_sol2_sigtramp_frame_unwind): Ditto.
* sparc64-tdep.c (sparc64_frame_unwind): Ditto.
* sparc64fbsd-tdep.c (sparc64fbsd_sigtramp_frame_unwind): Ditto.
* sparc64nbsd-tdep.c (sparc64nbsd_sigcontext_frame_unwind): Ditto.
* sparc64obsd-tdep.c (sparc64obsd_frame_unwind)
(sparc64obsd_trapframe_unwind): Ditto.
* sparcnbsd-tdep.c (sparc32nbsd_sigcontext_frame_unwind): Ditto.
* sparcobsd-tdep.c (sparc32obsd_sigtramp_frame_unwind): Ditto.
* spu-tdep.c (spu_frame_unwind, spu2ppu_unwind): Ditto.
* v850-tdep.c (v850_frame_unwind): Ditto.
* vax-tdep.c (vax_frame_unwind): Ditto.
* vaxobsd-tdep.c (vaxobsd_sigtramp_frame_unwind): Ditto.
* xstormy16-tdep.c (frame_unwind xstormy16_frame_unwind): Ditto.
* xtensa-tdep.c (xtensa_unwind): Ditto.
Pedro Alves [Fri, 18 Mar 2011 18:51:08 +0000 (18:51 +0000)]
gdb/testsuite/
* gdb.trace/unavailable.cc (args_test_func, local_test_func)
(reglocal_test_func, statlocal_test_func): New functions.
(globals_test_func): Call new functions.
* gdb.trace/unavailable.exp (gdb_collect_args_test)
(gdb_collect_locals_test): New procedure.
(gdb_trace_collection_test): Call new procedures.
Pedro Alves [Fri, 18 Mar 2011 18:50:20 +0000 (18:50 +0000)]
gdb/
* tui/tui-hooks.c (tui_selected_frame_level_changed_hook): Assume
there's always a frame. Use get_frame_pc_if_available instead of
get_frame_pc, and if there's no PC available, don't look up a
symtab.
Pedro Alves [Fri, 18 Mar 2011 18:48:56 +0000 (18:48 +0000)]
gdb/
* stack.c (print_frame_local_vars, print_frame_arg_vars): Handle
unavailable PC.
Pedro Alves [Fri, 18 Mar 2011 18:47:56 +0000 (18:47 +0000)]
gdb/
* tracepoint.c (set_traceframe_context): Handle unavailable PC
gracefully.
Pedro Alves [Fri, 18 Mar 2011 18:46:57 +0000 (18:46 +0000)]
Whoops! Actually put the ChangeLog entries in the correct file...
2011-03-18 Pedro Alves <pedro@codesourcery.com>
* frame.h (frame_unwind_caller_pc_if_available): Declare.
* frame.c (frame_unwind_caller_pc_if_available): New.
* stack.c (frame_info): Handle unavailable PC.
2011-03-18 Pedro Alves <pedro@codesourcery.com>
* frame.c (frame_unwind_pc): Rename to ...
(frame_unwind_pc_if_available): ... this. New `pc' output
parameter. Change return type to int. Gracefully handle
gdbarch_unwind_pc throwing NOT_AVAILABLE_ERROR. Return 0 if that
happened, or 1 otherwise.
(frame_unwind_pc): Reimplement on top of
frame_unwind_pc_if_available.
(get_frame_func): Rename to ...
(get_frame_func_if_available): New `pc' output parameter. Change
return type to int. Gracefully handle the PC not being available.
(get_frame_func): Reimplement on top of
get_frame_func_if_available.
(select_frame): Handle the PC being unavailable.
(get_prev_frame): Handle the PC being unavailable.
(get_frame_pc_if_available): New.
(get_frame_address_in_block_if_available): New.
(find_frame_sal): Handle the frame PC not being available.
* frame.h (get_frame_pc_if_available): Declare.
(get_frame_address_in_block_if_available): Declare.
(get_frame_func_if_available): Declare.
* stack.c (print_frame_info): Handle the PC being unavailable.
(find_frame_funname): Ditto.
(print_frame): Handle the PC being unavailable.
(get_frame_language): Ditto.
* blockframe.c (get_frame_block): Ditto.
* macroscope.c (default_macro_scope): Ditto.
* tui/tui-stack.c (tui_show_frame_info): Ditto.
2011-03-18 Pedro Alves <pedro@codesourcery.com>
* dwarf2loc.c (dwarf2_evaluate_loc_desc): Catch
NOT_AVAILABLE_ERROR when evaluating the location expression.
2011-03-18 Pedro Alves <pedro@codesourcery.com>
* dwarf2loc.c (read_pieced_value): Handle get_frame_register_bytes
returning that the register piece is unavailable/optimized out.
(write_pieced_value): Handle get_frame_register_bytes returning
that the register piece is unavailable/optimized out when doing a
read-modify write of a bitfield.
* findvar.c (value_from_register): Handle get_frame_register_bytes
returning that the register piece is unavailable/optimized out.
* frame.c (get_frame_register_bytes): New parameters `optimizedp'
and `unavailablep'. Throw error on bad debug info. Use
frame_register instead of frame_register_read, to fill in the new
arguments.
* frame.h (get_frame_register_bytes): New parameters `optimizedp'
and `unavailablep'.
* valops.c: (value_assign): Adjust, and handle
get_frame_register_bytes failing.
* spu-tdep.c: Include exceptions.h.
(spu_software_single_step): Adjust, and handle
get_frame_register_bytes failing.
(spu_get_longjmp_target): Ditto.
* gdbarch.sh (register_to_value): Change to return int. New
parameters `optimizedp' and `unavailablep'.
* gdbarch.h, gdbarch.c: Regenerate.
* i386-tdep.c (i386_register_to_value): Adjust to new
gdbarch_register_to_value interface.
* i387-tdep.c (i387_register_to_value): Ditto.
* i387-tdep.h (i387_register_to_value): Ditto.
* alpha-tdep.c (alpha_register_to_value): Ditto.
* ia64-tdep.c (ia64_register_to_value): Ditto.
* m68k-tdep.c (m68k_register_to_value): Ditto.
* mips-tdep.c (mips_register_to_value): Ditto.
* rs6000-tdep.c (rs6000_register_to_value): Ditto.
Pedro Alves [Fri, 18 Mar 2011 18:45:30 +0000 (18:45 +0000)]
gdb/
* frame.h (frame_unwind_caller_pc_if_available): Declare.
* frame.c (frame_unwind_caller_pc_if_available): New.
* stack.c (frame_info): Handle unavailable PC.
Pedro Alves [Fri, 18 Mar 2011 18:44:34 +0000 (18:44 +0000)]
gdb/
* frame.c (frame_unwind_pc): Rename to ...
(frame_unwind_pc_if_available): ... this. New `pc' output
parameter. Change return type to int. Gracefully handle
gdbarch_unwind_pc throwing NOT_AVAILABLE_ERROR. Return 0 if that
happened, or 1 otherwise.
(frame_unwind_pc): Reimplement on top of
frame_unwind_pc_if_available.
(get_frame_func): Rename to ...
(get_frame_func_if_available): New `pc' output parameter. Change
return type to int. Gracefully handle the PC not being available.
(get_frame_func): Reimplement on top of
get_frame_func_if_available.
(select_frame): Handle the PC being unavailable.
(get_prev_frame): Handle the PC being unavailable.
(get_frame_pc_if_available): New.
(get_frame_address_in_block_if_available): New.
(find_frame_sal): Handle the frame PC not being available.
* frame.h (get_frame_pc_if_available): Declare.
(get_frame_address_in_block_if_available): Declare.
(get_frame_func_if_available): Declare.
* stack.c (print_frame_info): Handle the PC being unavailable.
(find_frame_funname): Ditto.
(print_frame): Handle the PC being unavailable.
(get_frame_language): Ditto.
* blockframe.c (get_frame_block): Ditto.
* macroscope.c (default_macro_scope): Ditto.
* tui/tui-stack.c (tui_show_frame_info): Ditto.
Pedro Alves [Fri, 18 Mar 2011 18:43:33 +0000 (18:43 +0000)]
gdb/
* dwarf2loc.c (dwarf2_evaluate_loc_desc): Catch
NOT_AVAILABLE_ERROR when evaluating the location expression.
Pedro Alves [Fri, 18 Mar 2011 18:42:41 +0000 (18:42 +0000)]
gdb/
* dwarf2loc.c (read_pieced_value): Handle get_frame_register_bytes
returning that the register piece is unavailable/optimized out.
(write_pieced_value): Handle get_frame_register_bytes returning
that the register piece is unavailable/optimized out when doing a
read-modify write of a bitfield.
* findvar.c (value_from_register): Handle get_frame_register_bytes
returning that the register piece is unavailable/optimized out.
* frame.c (get_frame_register_bytes): New parameters `optimizedp'
and `unavailablep'. Throw error on bad debug info. Use
frame_register instead of frame_register_read, to fill in the new
arguments.
* frame.h (get_frame_register_bytes): New parameters `optimizedp'
and `unavailablep'.
* valops.c: (value_assign): Adjust, and handle
get_frame_register_bytes failing.
* spu-tdep.c: Include exceptions.h.
(spu_software_single_step): Adjust, and handle
get_frame_register_bytes failing.
(spu_get_longjmp_target): Ditto.
* gdbarch.sh (register_to_value): Change to return int. New
parameters `optimizedp' and `unavailablep'.
* gdbarch.h, gdbarch.c: Regenerate.
* i386-tdep.c (i386_register_to_value): Adjust to new
gdbarch_register_to_value interface.
* i387-tdep.c (i387_register_to_value): Ditto.
* i387-tdep.h (i387_register_to_value): Ditto.
* alpha-tdep.c (alpha_register_to_value): Ditto.
* ia64-tdep.c (ia64_register_to_value): Ditto.
* m68k-tdep.c (m68k_register_to_value): Ditto.
* mips-tdep.c (mips_register_to_value): Ditto.
* rs6000-tdep.c (rs6000_register_to_value): Ditto.
Pedro Alves [Fri, 18 Mar 2011 18:41:36 +0000 (18:41 +0000)]
gdb/
* findvar.c (value_of_register): Mark the value as unavailable, if
the register is unavailable.
* frame.h (frame_register_unwind): New `unavailablep' parameter.
(frame_register): New `unavailablep' parameter.
(frame_register_read): Update comment.
* frame.c (frame_register_unwind): New `unavailablep' parameter.
Set it if the register is unavailable. If the register is
unavailable, clear the output buffer.
(frame_register): New `unavailablep' parameter. Pass it down.
(frame_unwind_register): Adjust.
(put_frame_register): Adjust.
(frame_register_read): Adjust. Also return false if the register
is not available.
(frame_register_unwind_location): Adjust.
* sentinel-frame.c (sentinel_frame_prev_register): If the register
is unavailable, mark the value accordingly.
* stack.c (frame_info): Handle unavailable registers.
gdb/testsuite/
* gdb.trace/unavailable.exp (fpreg, spreg, pcreg): Define.
(test_register, test_register_unavailable): New procedures.
(gdb_unavailable_registers_test): New procedure.
(gdb_trace_collection_test): Call it.
Pedro Alves [Fri, 18 Mar 2011 18:40:08 +0000 (18:40 +0000)]
gdb/
* mi/mi-main.c (register_changed_p): Handle REG_UNAVAILABLE, and
simplify, using regcache_cooked_read.
Pedro Alves [Fri, 18 Mar 2011 18:38:44 +0000 (18:38 +0000)]
gdb/
* regcache.h (regcache_raw_read, regcache_raw_read_signed)
(regcache_raw_read_unsigned, regcache_raw_read_signed)
(regcache_raw_read_unsigned, regcache_raw_read_part)
(regcache_cooked_read, regcache_cooked_read_signed)
(regcache_cooked_read_unsigned, regcache_cooked_read_part)
(regcache_cooked_read_ftype): Change return to enum
register_status.
* regcache.c: Include exceptions.h
(regcache_save): Adjust to handle REG_UNAVAILABLE registers.
(do_cooked_read): Change return to enum register_status. Always
forward to regcache_cooked_read.
(regcache_raw_read): Change return to enum register_status. If
the register is not REG_VALID, memset the buffer. Return the
register's status.
(regcache_raw_read_signed): Handle non-REG_VALID registers and
return the register's status.
(regcache_raw_read_unsigned): Ditto.
(regcache_cooked_read): Change return to enum register_status.
Assert that with read-only regcaches, the register's status must
be known. If the regcache is read-only, and the register is not
REG_VALID, memset the buffer. Return the register's status.
(regcache_cooked_read_signed): Change return to enum
register_status. Handle non-REG_VALID registers and return the
register's status.
(regcache_cooked_read_unsigned): Change return to enum
register_status. Handle non-REG_VALID registers and return the
register's status.
(regcache_xfer_part, regcache_raw_read_part)
(regcache_cooked_read_part): Change return to enum
register_status. Return the register's status.
(regcache_read_pc): Throw NOT_AVAILABLE_ERROR if the register is
unavailable.
(regcache_dump): Handle unavailable cooked registers.
* frame.c (do_frame_register_read): Adjust interface to match
regcache_cooked_read_ftype.
* gdbarch.sh (pseudo_register_read): Change return to enum
register_status.
* gdbarch.h, gdbarch.c: Regenerate.
* i386-tdep.h (i386_pseudo_register_read): Change return to enum
register_status.
* i386-tdep.c (i386_pseudo_register_read): Change return to enum
register_status. If reading a raw register indicates the raw
register is not valid, return the raw register's status,
otherwise, return REG_VALID.
* amd64-tdep.c (amd64_pseudo_register_read): Change return to enum
register_status. Handle non-REG_VALID raw registers and return
the register's status.
* arm-tdep.c (arm_neon_quad_read)
(arm_pseudo_read): Change return to enum register_status. Handle
non-REG_VALID raw registers and return the register's status.
* avr-tdep.c (avr_pseudo_register_read): Ditto.
* frv-tdep.c (frv_pseudo_register_read): Ditto.
* h8300-tdep.c (h8300_pseudo_register_read): Ditto.
* hppa-tdep.c (hppa_pseudo_register_read): Ditto.
* m32c-tdep.c (m32c_move_reg_t): Change return to enum
register_status.
(m32c_raw_read, m32c_raw_write, m32c_banked_read)
(m32c_banked_write, m32c_sb_read, m32c_sb_write, m32c_part_read)
(m32c_part_write, m32c_cat_read, m32c_cat_write)
(m32c_r3r2r1r0_read, m32c_r3r2r1r0_write)
(m32c_pseudo_register_read): Change return to enum
register_status. Adjust.
* m68hc11-tdep.c (m68hc11_pseudo_register_read): Change return to
enum register_status. Return the register's status.
* mep-tdep.c (mep_pseudo_cr32_read): Change return to enum
register_status. Return the register's status.
(mep_pseudo_cr64_read, mep_pseudo_register_read): Ditto.
* mips-tdep.c (mips_pseudo_register_read): Ditto.
* mt-tdep.c (mt_pseudo_register_read): Ditto.
* rs6000-tdep.c (move_ev_register_func): New typedef.
(e500_move_ev_register): Use it. Change return to enum
register_status. Return the register's status.
(do_regcache_raw_read): New function.
(do_regcache_raw_write): New function.
(e500_pseudo_register_read): Change return to enum
register_status. Return the register's status. Use
do_regcache_raw_read.
(e500_pseudo_register_write): Adjust. Use do_regcache_raw_write.
(dfp_pseudo_register_read): Change return to enum register_status.
Return the register's status.
(vsx_pseudo_register_read): Ditto.
(efpr_pseudo_register_read): Ditto.
(rs6000_pseudo_register_read): Ditto.
* s390-tdep.c (s390_pseudo_register_read): Change return to enum
register_status. Return the register's status.
* sh64-tdep.c (pseudo_register_read_portions): New function.
(sh64_pseudo_register_read): Change return to enum
register_status. Use pseudo_register_read_portions. Return the
register's status.
* ia64-tdep.c (ia64_pseudo_register_read): Change return to enum
register_status. Return the register's status.
* sh-tdep.c (pseudo_register_read_portions): New function.
(sh_pseudo_register_read): Change return to enum register_status.
Use pseudo_register_read_portions. Return the register's status.
* sparc-tdep.c (sparc32_pseudo_register_read): Change return to
enum register_status. Return the register's status.
* sparc64-tdep.c (sparc64_pseudo_register_read): Ditto.
* spu-tdep.c (spu_pseudo_register_read_spu)
(spu_pseudo_register_read): Ditto.
* xtensa-tdep.c (xtensa_register_read_masked)
(xtensa_pseudo_register_read): Ditto.
* bfin-tdep.c (bfin_pseudo_register_read): Ditto.
David Edelsohn [Fri, 18 Mar 2011 17:44:46 +0000 (17:44 +0000)]
* config.guess: Update to version 2011-02-02
* config.sub: Update to version 2011-02-24