我需要一个额外的寄存器来在 smali 方法中存储一个字符串。我知道 smali 代码中的寄存器逻辑(请参阅https://github.com/JesusFreke/smali/wiki/Registers),但我仍然想知道如何归档增加的寄存器。
假设我有一个.locals n的方法。现在我想要.locals n+1。首先,我想迭代该方法并将每个 v 寄存器(v0 -> v1,v1 -> v2)加 1。然后 v0 将是我的新寄存器,我不会破坏任何现有数据。此外,我保持 p 和 v 寄存器之间的对齐。
不幸的是,这种简单的方法会导致无法编译代码。我不知道为什么。我错过了什么?