今天家里的橘猫突然莫名打嗝,干呕。晚上复盘的时候才发现因为今天我们起床时间差距较大,导致上午她喂完之后我又喂了一顿。橘爷爷又是给多少吃多少的主儿,所以吃撑了。
https://github.com/nakst/gf/pull/101/commits/007c08fede8c79f778a07c7b71f035a5c1b14456
发现一个很好玩的 commit,你们 C++ 真是太 fancy 了
发现一个很好玩的 commit,你们 C++ 真是太 fancy 了
#DynamoRIO
indirect jmp:
indirect call:
indirect return:
direct call:
direct jmp:
indirect jmp:
c.jr non-ra or jalr non-ra, off(reg)indirect call:
jalr ra, off(reg) or c.jalr regindirect return:
jalr zero, (ra) or c.jr radirect call:
jal ra, off or c.jal offdirect jmp:
jal non-ra, off or c.j off or branch instrcution
ksco 的工作日志
记一下,明天继续 debug。
还是没有头绪,我决定走 hard way,在 native 和 dr 之间,逐条指令比对结果,看看透明性到底在哪里遭到了破坏。
ksco 的工作日志
还是没有头绪,我决定走 hard way,在 native 和 dr 之间,逐条指令比对结果,看看透明性到底在哪里遭到了破坏。
解决了!!!!问题是 AUIPC 在 decode 的时候,imm 没有做 sign extend,所以如果 imm 是个负数,就会算出来错误的地址,导致 segfault。这么蠢的问题我竟然找了两天,JIT 真的好难 debug 🥹