Please ignore readelf(1) data/instruction addresses that are de facto line numbers
This bug was originally reported by Daniel Shahaf (danielsh@apache.org) in Debian bug #838569:
Daniel Shahaf wrote on Tue, Sep 20, 2016 at 18:47:31 +0000:
> However, in the .text section, each disassembled instruction is preceded
> by its address. I think it would make sense to have the diff ignore
> those addresses: they serve a purpose similar to line numbers, and
> ignoring them cannot cause a difference to be missed.
flexc++ has a difference on *every* line of several sections (.rodata,
.eh_frame, others) because the sections start 0xc0 bytes later in the
second build than in the first build:
│ │ │ │ │ - 0x0043a320 01000200 00000000 623a423a 633a433a ........b:B:c:C:
│ │ │ │ │ - 0x0043a330 64663a46 68693a49 3a4b6c3a 4c3a6d3a df:Fhi:I:Kl:L:m:
⋮
│ │ │ │ │ + 0x0043a3e0 01000200 00000000 623a423a 633a433a ........b:B:c:C:
│ │ │ │ │ + 0x0043a3f0 64663a46 68693a49 3a4b6c3a 4c3a6d3a df:Fhi:I:Kl:L:m:
Hence, filing this as a separate issue. #838260 can remain about
offsets embedded in instructions.
(It's safe to ignore these addresses because the start/end of the
section already appear elsewhere in the diffed output.)
Edited by Daniel Shahaf