From dfd3ea34821fac7d792ce6c6a752f5fa2d07f7d2 Mon Sep 17 00:00:00 2001 From: aoliva Date: Tue, 18 Aug 2009 19:44:04 +0000 Subject: [PATCH] * compare-debug: Drop .eh_frame relocations too. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150901 138bc75d-0d04-0410-961f-82ee72b054a4 --- contrib/ChangeLog | 4 ++++ contrib/compare-debug | 38 +++++++++++++++----------------------- 2 files changed, 19 insertions(+), 23 deletions(-) diff --git a/contrib/ChangeLog b/contrib/ChangeLog index 6ea5ebf24f5..778f380eddc 100644 --- a/contrib/ChangeLog +++ b/contrib/ChangeLog @@ -1,3 +1,7 @@ +2009-08-18 Alexandre Oliva + + * compare-debug: Drop .eh_frame relocations too. + 2009-08-18 H.J. Lu PR testsuite/40704 diff --git a/contrib/compare-debug b/contrib/compare-debug index e91e05d576e..9864ee91f30 100755 --- a/contrib/compare-debug +++ b/contrib/compare-debug @@ -107,41 +107,33 @@ else trap 'rm -f "$1.$suf1" "$2.$suf2" "$1.$suf3" "$2.$suf4"' 0 1 2 15 - if (objcopy -v) 2>&1 | grep -e "--remove-section" > /dev/null; then - objcopy --remove-section .eh_frame "$1.$suf1" "$1.$suf3" - cmp "$1.$suf1" "$1.$suf3" > /dev/null - cmp1=$? - - objcopy --remove-section .eh_frame "$2.$suf2" "$2.$suf4" - cmp "$2.$suf2" "$2.$suf4" > /dev/null - cmp2=$? + echo stripping off .eh_frame, then retrying >&2 + if (objcopy -v) 2>&1 | grep -e "--remove-section" > /dev/null; then + objcopy --remove-section .eh_frame --remove-section .rel.eh_frame --remove-section .rela.eh_frame "$1.$suf1" "$1.$suf3" mv "$1.$suf3" "$1.$suf1" + + objcopy --remove-section .eh_frame --remove-section .rel.eh_frame --remove-section .rela.eh_frame "$2.$suf2" "$2.$suf4" mv "$2.$suf4" "$2.$suf2" elif (strip --help) 2>&1 | grep -e --remove-section > /dev/null; then cp "$1.$suf1" "$1.$suf3" - strip --remove-section .eh_frame "$1.$suf3" + strip --remove-section .eh_frame --remove-section .rel.eh_frame --remove-section .rela.eh_frame "$1.$suf3" + mv "$1.$suf3" "$1.$suf1" cp "$2.$suf2" "$2.$suf4" - strip --remove-section .eh_frame "$2.$suf4" - - cmp "$1.$suf1" "$1.$suf3" > /dev/null - cmp1=$? - - cmp "$2.$suf2" "$2.$suf4" > /dev/null - cmp2=$? - - mv "$1.$suf3" "$1.$suf1" + strip --remove-section .eh_frame --remove-section .rel.eh_frame --remove-section .rela.eh_frame "$2.$suf4" mv "$2.$suf4" "$2.$suf2" + else + echo failed to strip off .eh_frame >&2 fi trap 'rm -f "$1.$suf1" "$2.$suf2"' 0 1 2 15 - fi - if test "x$cmp1" != "x$cmp2" && cmp "$1.$suf1" "$2.$suf2"; then - status=0 - else - status=1 + if cmp "$1.$suf1" "$2.$suf2"; then + status=0 + else + status=1 + fi fi fi -- 2.11.0