cris
(chris)
1
+ (instancetype)dateWithTimeInterval:(NSTimeInterval)secsToBeAdded sinceDate:(NSDate *)date;
这是函数原型,按理说x2 是个NSTimeInterval的参数,可是这里x2是[NSDate date].
另外这里还需要一个参数x3,从反汇编来看,从头到脚都没有x3这个寄存器。这是64位的反汇编。。。
经过测试,这里第二个参数应该是6000秒,也就是100分钟。
假如一个参数是一个宏:#define secsToBeAdded 6000
这样汇编会能看到吗?
1 个赞
我还真没碰到过这类问题;
如果是我的话,可能会尝试2种情况,看看是不是特例,还是有规律的:
-
再找(或者自己构造)一个+ (instancetype)dateWithTimeInterval:(NSTimeInterval)secsToBeAdded sinceDate:(NSDate *)date;
断下来看看效果;
-
找(或者自己构造)一个其他 类函数 看看效果
budou
3
这里涉及到 NEON 寄存器的问题,第一个参数是存在 d0 寄存器中的,x2 中是第二个参数,NEON可以参考ARM NEON优化(一)——NEON简介及基本架构
2 个赞