Commit 527d86558eb45edd1543e38d77cd1e1f09936ec1
Committed by
Tom Rini
1 parent
e43f74ac0b
Exists in
smarc_8mq_lf_v2020.04
and in
19 other branches
scripts: objdiff: Ignore debug info when comparing
If the kernel is configured to be built with debug symbols, or has bug tables, comparing files may not work if line numbers change. This makes comparing object files with these options harder to do. Let's strip out the debug info and drop the __bug_table here so that we don't see false positives. There may be other things to drop later, and it may be architecture specific, but this works for me with my ARM64 build. [ Import Linux commit: 65ba6fa439e7c3cbf97de9dce9e7a3390ae2638c ] Signed-off-by: Stephen Boyd <stephen.boyd@linaro.org> Reviewed-by: Jason Cooper <jason@lakedaemon.net> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Showing 1 changed file with 4 additions and 1 deletions Side-by-side Diff
scripts/objdiff
... | ... | @@ -57,13 +57,15 @@ |
57 | 57 | do_objdump() { |
58 | 58 | dir=$(get_output_dir $1) |
59 | 59 | base=${1##*/} |
60 | + stripped=$dir/${base%.o}.stripped | |
60 | 61 | dis=$dir/${base%.o}.dis |
61 | 62 | |
62 | 63 | [ ! -d "$dir" ] && mkdir -p $dir |
63 | 64 | |
64 | 65 | # remove addresses for a cleaner diff |
65 | 66 | # http://dummdida.tumblr.com/post/60924060451/binary-diff-between-libc-from-scientificlinux-and |
66 | - $OBJDUMP -D $1 | sed "s/^[[:space:]]\+[0-9a-f]\+//" > $dis | |
67 | + $STRIP -g $1 -R __bug_table -R .note -R .comment -o $stripped | |
68 | + $OBJDUMP -D $stripped | sed -e "s/^[[:space:]]\+[0-9a-f]\+//" -e "s:^$stripped:$1:" > $dis | |
67 | 69 | } |
68 | 70 | |
69 | 71 | dorecord() { |
... | ... | @@ -73,6 +75,7 @@ |
73 | 75 | |
74 | 76 | CMT="`git rev-parse --short HEAD`" |
75 | 77 | |
78 | + STRIP="${CROSS_COMPILE}strip" | |
76 | 79 | OBJDUMP="${CROSS_COMPILE}objdump" |
77 | 80 | |
78 | 81 | for d in $FILES; do |