请教一个关于armv7下的imp偏移问题。

我通过runtime获取一个类的某个实例方法的imp即函数地址:

Method m = class_getInstanceMethod(NSClassFromString(@“xxxx”), @selector(hahaha));
IMP imp = method_getImplementation(m);

在ARM64下,这个IMP地址就正正好好指向函数的首地址。
但是在ARMv7下,这个IMP地址是函数的首地址加一,请问这个问题是为何呢?

因为 目标函数是 thumb代码

请问能给点相关的资料吗?

没什么研究的 就是 arm 代码 地址是偶数 thumb代码是奇数 blx 跳转的时候根据目标地址奇偶,切换状态。所以所有模块之间函数调用 因为不知道目标代码是什么编译的,就都用blx,模块内的函数跳转你观察下 一般都是bl

了解,谢谢解惑,我去深入了解下。