如何启用WinMobile6的ARMv6未对齐访问? [英] How to enable ARMv6 unaligned access on WinMobile6?

查看:253
本文介绍了如何启用WinMobile6的ARMv6未对齐访问?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

ARMv6的引入一个很大的特点 - 未对齐的内存访问,它使code有些东西更simplier更快。但微软只在WINCE6给API它。而大多数PDA现在基于WinMobile6(这是在CE 5.x的)。和对齐访问默认情况下禁用:(

ARMv6 introduce a great feature - unaligned memory access, which make some things in code much more simplier and faster. But microsoft gives API for it only in winCE6. And most PDAs now based on WinMobile6 (which is on CE 5.x). And unaligned access is disabled by default :(

我已经尝试设置对齐标志CP15寄存器,但这并不工作 - 我对读到未对齐的数据崩溃

I've try to set unaligned flag in CP15 register, but this doesn't work - I have a crash on read unaligned data.

是否有可能启用WinMobile6未对齐访问?

Is it possible to enable unaligned access on WinMobile6?


编辑:我已经找到了工具,它可以使对齐访问,但我想开/关从我的code。这是 nueAdvancedProcessor ​​

I've found the tool, which can enable unaligned access, but I want to on/off it from my code. It's nueAdvancedProcessor.

推荐答案

有一个未对齐访问标记(CP15控制寄存器中的U位),并对齐故障检查(在A位)。请确保你有你想要做什么是正确的组合。特别是,如果A位设置,所有未对齐访问会导致数据中止例外,即使你有U位。检查出的ARM文档 - 所有可用的 http://www.arm.com

There is an unaligned access flag (the U bit in CP15 control register) and also an alignment fault checker (the A bit). Make sure you have the right combination for what you want to do. In particular, if the A bit is set, all of your unaligned accesses will cause a data abort exception, even if you have the U bit on. Check out the ARM docs on that - all available at http://www.arm.com.

在特定的,你想第A2.8.2在ARMv6的系统中未对齐的数据访问的ARM体系结构参考手册中给出。文档编号ARM DDI 0100I。它的名为建筑的ARMv5参考手册,而是包含了最初的ARMv6的信息。我希望此链接: HTTP://infocenter.arm .COM /帮助/主题/ com.arm.doc.ddi0100i / index.html的

In particular, you want Section A2.8.2 "Unaligned data access in ARMv6 systems" in the ARM Architecture Reference Manual. Document number ARM DDI 0100I. It's titled "ARMv5 Architecture Reference Manual", but contains the initial ARMv6 information. I hope this link works: http://infocenter.arm.com/help/topic/com.arm.doc.ddi0100i/index.html

这篇关于如何启用WinMobile6的ARMv6未对齐访问?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆