[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Parse out the function address wrong in `nm` version 3.40
From: |
Alan Modra |
Subject: |
Re: Parse out the function address wrong in `nm` version 3.40 |
Date: |
Fri, 28 Jul 2023 08:59:59 +0930 |
On Thu, Jul 27, 2023 at 02:23:11PM +0800, Fr3v1 wrote:
> Hi, I am using the command `nm --defined-only -l --demangle=auto -n
> libexpatw.so.1_withsym > libexpatw_nm` to get the function address and
> corresponding address in source code.
> And the result seems not correct enough: every function address is one byte
> more than the result in IDA (which the result in IDA is the same as the the
> info in dwarfdump and llvm-dwarfdump) e.g: in IDA the
> function processXmlDecl starts at text:0000397C, but the nm shows it starts
> at 0000397D.
> I tested some other files, but only this one trigger this thing.
See the ARM EABI documents. Thumb function symbols are marked by
setting the low bit of their value.
--
Alan Modra
Australia Development Lab, IBM