QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1303|回复: 1

may bug on UART???

[复制链接]
发表于 2006-5-17 23:41:17 | 显示全部楼层 |阅读模式
It's not in the port, it's hardcoded into the Skyeye Makefile.
About the bug, unfortunately I don't really remember what was going on,
except that somehow, when reading the US_RHR char, the value
returned by at91rm92_io_read_word() was 0xff, not the actual value. But I
never understood where the value got changed. It should be 100% reproductible
on any FreeBSD/i386. Just compile Skyeye with -O2, and you shouldn't be able
to fully use the UART.

Cheers,

大虾们可以具体联系Olivier Houchard <[email protected]>

因为我是skyeye 的 porter 所以他们把信发给我了,我想应该发给斑竹更合适吧。
 楼主| 发表于 2006-5-18 10:22:00 | 显示全部楼层
找到原因了

初步估计是
那个函数里面的强制类型转换代码和gcc 的优化不兼容。

编译选项-O2 -fno-strict-aliasing
可以通过。

建议走查一下那个函数的强制类型转换部分。
也可以看看-fstrict-aliasing的文档。
看看有没有办法规避。

总的感觉,strict-aliasing的优化不是很必要,可以在makefile中用
-fno-strict-aliasing关闭。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-23 11:51 , Processed in 0.050799 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表