thumb

    2热度

    1回答

    正如标题所示,我想拆解elf文件,但是我遇到了一个问题,我不知道哪个指令是arm指令,哪个指令是thumb指令。由于arm指令为32位,而Thumb指令为16位,因此拆卸方式不同。那么如何从十六进制指令中检测到拇指指令呢?

    0热度

    1回答

    我使用ndk和Eclipse ADT来为Android构建应用程序,并且工作正常。不过,我想知道为什么构建过程涉及编译arm和拇指,即每次我在源文件中进行修改时,都会重新编译arm和thumb。有必要吗 ?如果不是,我怎么能告诉建设者只编译和链接armabi-V7a?这将除以2构建处理时间...

    -1热度

    1回答

    我有一个为ARM指令集编写的汇编代码,我想将它转换为thumb2指令集或Unified Assembly语言。这在ARM Infocenter文档中没有清楚地解释。任何人都可以帮我做到吗?指南或“翻译”文件将非常受欢迎。

    0热度

    1回答

    我收到一个错误,说addeq应该在IT块中。从我可以告诉它是。 下面是代码的切口,在https://github.com/Jcfunk/g3_kernel/blob/lp-release/arch/arm/crypto/aesbs-core.S_shipped ite eq @ Thumb2 thing, sanity check in ARM addeq r6,r6,#0x10

    1热度

    1回答

    我正在研究闪存空间(用于固件存储)和内存(用于执行)的产品都很贵。因此,我希望得到的ELF尽可能小,而不会明显牺牲产品性能。该代码被编译为ARM和Thumb的混合,基本上使用Thumb模式,当我可以摆脱它。我一直在调整编译器/链接器选项以减小大小(优化空间,删除未使用的函数等)。我注意到的一件事是,我得到了很多(大约180个)生成的远程调用补丁,这占用了一些空间。长话短说,任何人都知道一个很好的方

    0热度

    2回答

    这里当是C源代码行,其崩溃上的ARMv7: ret = fnPtr (param1, param2); 在调试程序,fnPtr具有0x04216c00的地址。当我拆开在那里它的指向上述陈述的电脑,这里是我得到: 0x18918e: movw r0, #0x73c 0x189192: movt r0, #0x1 0x189196: add r0, r2 0x189198: ldr r0,

    -1热度

    4回答

    的地址值I在C以下代码: int addInt(int n, int m) { return n + m; } int (*functionPtr)(int, int); functionPtr = &addInt; functionPtr是一个函数指针,它指向函数addInt的具体地址。我想改变其价值的一点,但我不知道如何。 比方说functionPtr点0xABC0(假

    1热度

    2回答

    在ARM体系结构中,如果发生ARM到Thumb模式切换,是否会发生流水线延迟? 如果是这样,会影响多少个周期? 这与拇指到ARM模式切换是否相同? 此行为是否因不同的ARM处理器而异?

    2热度

    3回答

    我在写一个ARMv7反汇编程序。 在ARM参考手册中清楚地描述了在ARM和Thumb模式之间切换的方式,但您如何知道程序启动的模式? 我使用的Xcode在默认情况下编译成拇指,所以我知道我所有的自己的节目将在拇指启动,除非我强迫编译到ARM模式。但是,我希望能够执行任意的mach-o可执行文件,并在代码的开头找到指令集模式。 在mach-o头文件中是否有某处指定了入口点处的指令集?

    0热度

    1回答

    在ARM中,Thumb-EE指令集支持自动空指针检查。 In ThumbEE state, the processor uses almost the same instruction set as Thumb-2 although some instructions behave differently, and a few are removed, or added. The key di