From: Andreas Arnez Date: Fri, 7 Mar 2014 12:23:47 +0000 (+0000) Subject: Fix dw2-ifort-parameter.exp on PPC64 X-Git-Tag: gdb-7.8-release~842 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=646f4417760ab12c0d955dabf821d8737d94335a;p=external%2Fbinutils.git Fix dw2-ifort-parameter.exp on PPC64 On PPC64, 'func' and 'main' are function descriptors and don't point to the actual code. Thus the usage of these symbols in the DWARF assembler source was broken. The patch introduces new labels func_start and func_end for this purpose. --- diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 2452c77..56275a3 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,5 +1,13 @@ 2014-03-12 Andreas Arnez + * gdb.dwarf2/dw2-ifort-parameter.c (func): Define labels + 'func_start' and 'func_end' for the beginning and end of the + function code, respectively. + * gdb.dwarf2/dw2-ifort-parameter.exp: Use 'func_start' and + 'func_end' instead of 'func' and 'main'. + +2014-03-12 Andreas Arnez + * gdb.dwarf2/dw2-ifort-parameter-debug.S: Remove. * gdb.dwarf2/dw2-ifort-parameter.exp: Use Dwarf::assemble to generate the debug info assembler source. diff --git a/gdb/testsuite/gdb.dwarf2/dw2-ifort-parameter.c b/gdb/testsuite/gdb.dwarf2/dw2-ifort-parameter.c index 361c44d..4474814 100644 --- a/gdb/testsuite/gdb.dwarf2/dw2-ifort-parameter.c +++ b/gdb/testsuite/gdb.dwarf2/dw2-ifort-parameter.c @@ -18,11 +18,17 @@ int value = 0xdeadf00d; int *ptr = &value; -void +asm (".section \".text\""); +asm (".balign 8"); +asm ("func_start: .globl func_start"); + +static void func (void) { } +asm ("func_end: .globl func_end"); + int main (void) { diff --git a/gdb/testsuite/gdb.dwarf2/dw2-ifort-parameter.exp b/gdb/testsuite/gdb.dwarf2/dw2-ifort-parameter.exp index d11de9e..026e071 100644 --- a/gdb/testsuite/gdb.dwarf2/dw2-ifort-parameter.exp +++ b/gdb/testsuite/gdb.dwarf2/dw2-ifort-parameter.exp @@ -29,14 +29,14 @@ set asm_file [standard_output_file $srcfile2] Dwarf::assemble $asm_file { declare_labels int_label - extern main func ptr + extern func_start func_end ptr cu {} { compile_unit { {name file1.txt} {language @DW_LANG_C} - {low_pc func addr} - {high_pc main addr} + {low_pc func_start addr} + {high_pc func_end addr} } { int_label: base_type { {name int} @@ -47,8 +47,8 @@ Dwarf::assemble $asm_file { subprogram { {external 1 flag} {name func} - {low_pc func addr} - {high_pc main addr} + {low_pc func_start addr} + {high_pc func_end addr} } { formal_parameter { {name param}