QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1607|回复: 1

最新版本的一个Bug!!!

[复制链接]
发表于 2009-8-4 10:35:35 | 显示全部楼层 |阅读模式
arm920t_mmu_read   这个函数 其中代码
        if (MMU_Disabled)
        {
                //*data = mem_read_word(state, va);
                if (datatype == ARM_BYTE_TYPE)
                        //*data = mem_read_byte (state, va);
                        bus_read (8, va, data);
                else if (datatype == ARM_HALFWORD_TYPE)
                        //*data = mem_read_halfword (state, va);
                        bus_read (16, va, data);
                else if (datatype == ARM_WORD_TYPE)
                        //*data = mem_read_word (state, va);
                        bus_read (32, va, data);
                else
                {
                        printf ("SKYEYE:1 arm920t_mmu_read error: unknown data type %d\n", datatype);
                        skyeye_exit (-1);
                }
                                //这里直接返回了,会导至datatype == ARM_BYTE_TYPE  ||  ARM_HALFWORD_TYPE 情况下,读入CPU 寄存器的 BYTE 或 Half work 高位没有机会清0.
                return 0;
        }

[ 本帖最后由 quihaitang 于 2009-8-6 11:23 编辑 ]
发表于 2009-8-20 17:17:28 | 显示全部楼层
很好的一个发现。
牛人。
回复

使用道具 举报

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

本版积分规则

GMT+8, 2024-4-24 07:06 , Processed in 0.052881 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

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