From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 11229 invoked by alias); 5 Sep 2010 12:26:40 -0000 Mailing-List: contact archer-commits-help@sourceware.org; run by ezmlm Sender: Precedence: bulk List-Post: List-Help: List-Subscribe: Received: (qmail 11196 invoked by uid 9674); 5 Sep 2010 12:26:38 -0000 Date: Sun, 05 Sep 2010 12:26:00 -0000 Message-ID: <20100905122638.11181.qmail@sourceware.org> From: jkratoch@sourceware.org To: archer-commits@sourceware.org Subject: [SCM] archer-jankratochvil-entryval: Missing DW_TAG_GNU_call_site_parameter is also not invalid. X-Git-Refname: refs/heads/archer-jankratochvil-entryval X-Git-Reftype: branch X-Git-Oldrev: acaf239bbbc87d909fe4d3ac1eb26bdcdcb137de X-Git-Newrev: 970cbf09881497309688104d92011dac29363fb6 X-SW-Source: 2010-q3/txt/msg00078.txt.bz2 List-Id: The branch, archer-jankratochvil-entryval has been updated via 970cbf09881497309688104d92011dac29363fb6 (commit) from acaf239bbbc87d909fe4d3ac1eb26bdcdcb137de (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email. - Log ----------------------------------------------------------------- commit 970cbf09881497309688104d92011dac29363fb6 Author: Jan Kratochvil Date: Sun Sep 5 14:26:24 2010 +0200 Missing DW_TAG_GNU_call_site_parameter is also not invalid. ----------------------------------------------------------------------- Summary of changes: gdb/dwarf2loc.c | 14 ++++++++++++-- 1 files changed, 12 insertions(+), 2 deletions(-) First 500 lines of diff: diff --git a/gdb/dwarf2loc.c b/gdb/dwarf2loc.c index 651c8f4..924f317 100644 --- a/gdb/dwarf2loc.c +++ b/gdb/dwarf2loc.c @@ -748,8 +748,18 @@ dwarf_expr_regnum_entry_value (void *baton, int regnum, CORE_ADDR deref_size) break; } if (iparams == call_site_stuff->parameter_count) - error (_("Cannot find register %d at DW_TAG_GNU_call_site %s"), - regnum, paddress (caller_gdbarch, caller_pc)); + { + struct minimal_symbol *msym = lookup_minimal_symbol_by_pc (caller_pc); + + /* DW_TAG_GNU_call_site_parameter will be missing just if GCC could not + determine its value. So do not complain more than + VALUE_OPTIMIZED_OUT_ERROR. */ + throw_error (VALUE_OPTIMIZED_OUT_ERROR, + _("Cannot find register %d at " + "DW_TAG_GNU_call_site %s at %s"), + regnum, paddress (caller_gdbarch, caller_pc), + ! msym ? "???" : SYMBOL_PRINT_NAME (msym)); + } if (deref_size == -1) { hooks/post-receive -- Repository for Project Archer.