Fix "readelf -wi" test
This commit is contained in:
parent
834216a99a
commit
3f7de0e75e
@ -1,3 +1,7 @@
|
||||
2003-04-23 J"orn Rennecke <joern.rennecke@superh.com>
|
||||
|
||||
* readelf.c (decode_location_expression): Don't add a trailing ';'.
|
||||
|
||||
2003-04-23 Dimitrie O. Paun <dpaun@rogers.com>
|
||||
Nick Clifton <nickc@redhat.com>
|
||||
|
||||
|
@ -7727,7 +7727,8 @@ decode_location_expression (data, pointer_size, length)
|
||||
}
|
||||
|
||||
/* Separate the ops. */
|
||||
printf ("; ");
|
||||
if (data < end)
|
||||
printf ("; ");
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1,3 +1,16 @@
|
||||
2003-04-23 Nick Clifton <nickc@redhat.com>
|
||||
|
||||
* readelf.exp (proc prune_readelf_warnings): New function.
|
||||
(proc readelf_test): Prune warning messages.
|
||||
(readelf_test -wi): Add more expected failures.
|
||||
* readelf.wi: Severly reduce expected output.
|
||||
* testprog.c (string): Explicitly use unsigned chars.
|
||||
(stdio.h, string.h): Remove inclusion.
|
||||
|
||||
2003-04-23 J"orn Rennecke <joern.rennecke@superh.com>
|
||||
|
||||
* readelf.wi: Update.
|
||||
|
||||
2003-04-22 Dimitrie O. Paun <dpaun@rogers.com>
|
||||
|
||||
* binutils-all/windres/windres.exp: Add test for the new -J
|
||||
|
@ -164,6 +164,12 @@ proc readelf_find_size { binary_file } {
|
||||
pass $testname
|
||||
}
|
||||
|
||||
# Simple proc to skip certain expected warning messages.
|
||||
proc prune_readelf_warnings { text } {
|
||||
regsub -all "(^|\n)(.*Skipping unexpected symbol type.*)" $text "\\1" text
|
||||
return $text
|
||||
}
|
||||
|
||||
# Run an individual readelf test.
|
||||
# Basically readelf is run on the binary_file with the given options.
|
||||
# Readelf's output is captured and then compared against the contents
|
||||
@ -183,10 +189,13 @@ proc readelf_test { options binary_file regexp_file xfails } {
|
||||
foreach xfail $xfails {
|
||||
setup_xfail $xfail
|
||||
}
|
||||
|
||||
set got [prune_readelf_warnings $got]
|
||||
|
||||
if ![string match "" $got] then {
|
||||
fail "readelf $options (reason: unexpected output)"
|
||||
send_log $got
|
||||
fail "readelf $options"
|
||||
send_log "\n"
|
||||
return
|
||||
}
|
||||
|
||||
@ -288,4 +297,4 @@ if [is_remote host] {
|
||||
# The xfail targets here do not default to DWARF2 format debug information
|
||||
# The symptom is that the output of 'readelf -wi' is empty.
|
||||
|
||||
readelf_test -wi $tempfile readelf.wi {v850*-*-* cris-*-* mips*-*-elf* *-*-linux* h8300*-*-*}
|
||||
readelf_test -wi $tempfile readelf.wi {v850*-*-* cris-*-* mips*-*-elf* avr-*-* d30v-*-* h8300*-*-* i960-*-* m32r-*-* sparc-*-*}
|
||||
|
@ -4,73 +4,26 @@ The section .debug_info contains:
|
||||
Length: .*
|
||||
Version: 2
|
||||
Abbrev Offset: 0
|
||||
Pointer Size: 4
|
||||
Pointer Size: .
|
||||
<.><.*>: Abbrev Number: .* \(DW_TAG_compile_unit\)
|
||||
DW_AT_name : .*/testprog.c
|
||||
DW_AT_comp_dir : .*/binutils
|
||||
DW_AT_producer : GNU C .*
|
||||
DW_AT_language : 1 \(ANSI C\)
|
||||
DW_AT_low_pc : 0
|
||||
DW_AT_high_pc : .*
|
||||
DW_AT_stmt_list : 0
|
||||
<.><.*>: Abbrev Number: 2 \(DW_TAG_subprogram\)
|
||||
DW_AT_high_pc : .*
|
||||
DW_AT_low_pc : 0.*
|
||||
DW_AT_producer :.*
|
||||
DW_AT_language : 1 \(ANSI C\)
|
||||
DW_AT_name : .*
|
||||
<.><.*>: Abbrev Number: .* \(DW_TAG_subprogram\)
|
||||
DW_AT_external : 1
|
||||
DW_AT_name : fn
|
||||
DW_AT_decl_file : 1
|
||||
DW_AT_decl_line : 10
|
||||
DW_AT_decl_line : 12
|
||||
DW_AT_type : .*
|
||||
DW_AT_low_pc : 0
|
||||
DW_AT_low_pc : 0.*
|
||||
DW_AT_high_pc : .*
|
||||
DW_AT_frame_base : 1 byte block: .*
|
||||
<.><.*>: Abbrev Number: 3 \(DW_TAG_base_type\)
|
||||
DW_AT_frame_base : .*
|
||||
<.><.*>: Abbrev Number: .* \(DW_TAG_base_type\)
|
||||
DW_AT_name : int
|
||||
DW_AT_byte_size : 4
|
||||
DW_AT_encoding : 5 \(signed\)
|
||||
<.><.*>: Abbrev Number: 4 \(DW_TAG_subprogram\)
|
||||
DW_AT_sibling : .*
|
||||
DW_AT_external : 1
|
||||
DW_AT_name : main
|
||||
DW_AT_decl_file : 1
|
||||
DW_AT_decl_line : 16
|
||||
DW_AT_type : .*
|
||||
DW_AT_low_pc : .*
|
||||
DW_AT_high_pc : .*
|
||||
DW_AT_frame_base : 1 byte block: .*
|
||||
<.><.*>: Abbrev Number: 5 \(DW_TAG_lexical_block\)
|
||||
DW_AT_low_pc : .*
|
||||
DW_AT_high_pc : .*
|
||||
<.><.*>: Abbrev Number: 6 \(DW_TAG_variable\)
|
||||
DW_AT_name : common
|
||||
DW_AT_decl_file : 1
|
||||
DW_AT_decl_line : 3
|
||||
DW_AT_type : <.*>
|
||||
DW_AT_external : 1
|
||||
DW_AT_location : 5 byte block: 3 0 0 0 0 \(DW_OP_addr: 0\)
|
||||
<.><.*>: Abbrev Number: 6 \(DW_TAG_variable\)
|
||||
DW_AT_name : global
|
||||
DW_AT_decl_file : 1
|
||||
DW_AT_decl_line : 4
|
||||
DW_AT_type : <.*>
|
||||
DW_AT_external : 1
|
||||
DW_AT_location : 5 byte block: 3 0 0 0 0 \(DW_OP_addr: 0\)
|
||||
<.><.*>: Abbrev Number: 7 \(DW_TAG_variable\)
|
||||
DW_AT_name : local
|
||||
DW_AT_decl_file : 1
|
||||
DW_AT_decl_line : 5
|
||||
DW_AT_type : <.*>
|
||||
DW_AT_location : 5 byte block: 3 . 0 0 . \(DW_OP_addr: .\)
|
||||
<.><.*>: Abbrev Number: 8 \(DW_TAG_array_type\)
|
||||
DW_AT_sibling : <.*>
|
||||
DW_AT_type : <.*>
|
||||
<.><.*>: Abbrev Number: 9 \(DW_TAG_subrange_type\)
|
||||
DW_AT_upper_bound : 6
|
||||
<.><.*>: Abbrev Number: 3 \(DW_TAG_base_type\)
|
||||
DW_AT_name : char
|
||||
DW_AT_byte_size : 1
|
||||
DW_AT_encoding : 8 \(unsigned char\)
|
||||
<.><.*>: Abbrev Number: 7 \(DW_TAG_variable\)
|
||||
DW_AT_name : string
|
||||
DW_AT_decl_file : 1
|
||||
DW_AT_decl_line : 6
|
||||
DW_AT_type : <.*>
|
||||
DW_AT_location : 5 byte block: 3 . 0 0 . \(DW_OP_addr: .\)
|
||||
DW_AT_byte_size : .*
|
||||
DW_AT_encoding : .* \(signed\)
|
||||
<.><.*>: Abbrev Number: .* \(DW_TAG_subprogram\)
|
||||
#pass
|
||||
|
@ -1,12 +1,11 @@
|
||||
/* This program is used to test objcopy and strip. */
|
||||
/* This program is used to test objcopy, readelf and strip. */
|
||||
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
extern int strcmp (char *, const char *);
|
||||
|
||||
int common;
|
||||
int global = 1;
|
||||
static int local = 2;
|
||||
static char string[] = "string";
|
||||
static unsigned char string[] = "string";
|
||||
|
||||
int
|
||||
fn ()
|
||||
|
Loading…
x
Reference in New Issue
Block a user