大家。我为armv5(arm926ej-s)交叉编译valgrind时遇到了一些问题。我可以弄清楚其中一些,但有一个我无法解决。我会写这些问题:
Valgrind不支持configure
中的armv5,而armv7*)
代替armv7*|arm*)
并且效果很好。
-mcpu=cortex-a8
不对,因为我有一个arm926ej-s CPU。所以我使用这个命令在Makfiles中替换它们:
sed -i's / -mcpu = cortex-a8 / -mcpu = arm926ej-s / g'`find。 -名称 “生成文件*”`
出现问题。 armv5不支持源代码中的movw
和movt
。错误消息是:
m_dispatch/dispatch-arm-linux.S: Assembler messages: m_dispatch/dispatch-arm-linux.S:122: Error: selected processor does not support `movw r1,#47' m_dispatch/dispatch-arm-linux.S:123: Error: selected processor does not support `movw r2,#0' m_dispatch/dispatch-arm-linux.S:175: Error: selected processor does not support `movw r1,#:lower16:vgPlain_stats__n_xindirs_32' m_dispatch/dispatch-arm-linux.S:176: Error: selected processor does not support `movt r1,#:upper16:vgPlain_stats__n_xindirs_32' m_dispatch/dispatch-arm-linux.S:183: Error: selected processor does not support `movw r1,#(((1<<15))-1)' m_dispatch/dispatch-arm-linux.S:184: Error: selected processor does not support `movw r4,#:lower16:vgPlain_tt_fast' m_dispatch/dispatch-arm-linux.S:187: Error: selected processor does not support `movt r4,#:upper16:vgPlain_tt_fast' m_dispatch/dispatch-arm-linux.S:200: Error: selected processor does not support `movw r1,#:lower16:vgPlain_stats__n_xindir_misses_32' m_dispatch/dispatch-arm-linux.S:201: Error: selected processor does not support `movt r1,#:upper16:vgPlain_stats__n_xindir_misses_32'
我在想{而不是movw
和movt
与mov
。但我不熟悉汇编代码。任何人都可以帮忙吗?谢谢!
答案 0 :(得分:2)
valgrind bug跟踪器中的bug 248998上有一些补丁试图添加对armv5的支持,但我没有它们的完整程度或它们的工作情况。
无论如何,他们可能会为你的工作提供一个良好的起点。