This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: PATCH: PR bootstrap/53472: contrib/compare-debug should strip out .comment section


> 2012-05-24 ?H.J. Lu ?<hongjiu.lu@intel.com>
>
> ? ? ? ?PR bootstrap/53472
> ? ? ? ?* contrib/compare-debug (remove_comment): New function.
> ? ? ? ?Remove any .comment sections if the first cmp failed.

Ok.

Paolo

> diff --git a/contrib/compare-debug b/contrib/compare-debug
> index 010d17f..fb8986d 100755
> --- a/contrib/compare-debug
> +++ b/contrib/compare-debug
> @@ -73,11 +73,35 @@ Darwin)
> ? ;;
> ?esac
>
> +remove_comment ()
> +{
> + ?file=$1
> + ?opts=
> + ?for s in `objdump --section-headers "$file" | awk '{ print $2 }'`; do
> + ? ?case "$s" in
> + ? ?.comment*)
> + ? ? ?opts="$opts --remove-section $s"
> + ? ? ?;;
> + ? ?esac
> + ?done
> + ?[ -n "$opts" ] && objcopy $opts $file
> +}
> +
> ?if cmp "$1.$suf1" "$2.$suf2"; then
> ? status=0
> ?else
> ? status=1
>
> + ?# Remove any .comment sections.
> + ?if (objcopy -v) 2>&1 | grep ' --remove-section' > /dev/null \
> + ? ? && (objdump --help) 2>&1 | grep ' --\[*section-\]*headers' >
> /dev/null; then
> + ? ?remove_comment "$1.$suf1"
> + ? ?remove_comment "$2.$suf2"
> + ? ?if cmp "$1.$suf1" "$2.$suf2"; then
> + ? ? ?status=0
> + ? ?fi
> + ?fi
> +
> ? # Assembler-generated CFI will add an .eh_frame section for -g not
> ? # present in -g0. ?Try to cope with it by checking that an .eh_frame
> ? # section is present in either object file, and then stripping it
>


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]