假设我们有一个 thumb2 elf 文件,其中包含 objdump 的以下反汇编代码段:
00279ae0 <some_func>:
279ae0: e92d 4ff0 stmdb sp!, {r4, r5, r6, r7, r8, r9, sl, fp, lr}
279ae4: 4606 mov r6, r0
279ae6: f8df 9338 ldr.w r9, [pc, #824]
279aea: f44f 7380 mov.w r3, #256
....
279af2: 44f9 add r9, pc
279af4: ed2d 8b02 vpush {d8}
279af8: f8d6 108c ldr.w r1, [r6, #140]
1) 如果我将第 279af2 行修改为一些非法指令,例如“ffff”,而不是在执行时,进程在运行到 ffff 时会得到一个 SIGILL/ILL_ILLOPC
2)如果我将第 279af4 行修改为非法指令 ed2d ffff,进程将直接退出,而不会收到任何信号或 kmsg 中的任何输出......我真的很想知道为什么这只发生在 NEON 指令上?在这种情况下,我期待一些错误提示,但没有...除了内核消息之外,我在哪里可以找到额外的错误提示?
非常感谢你们。