问程序的同学,进来这里吧,别纠结了。(更新9-21)

[复制链接]
41585|176
xianxian314 发表于 2011-9-22 21:06 | 显示全部楼层
我还是很纠结啊很纠结
为什么多了一层嵌套就不能读取P0数值呢?链接求指导!!
https://bbs.21ic.com/frame.php?fr ... om/iclist-11-1.html
 楼主| NE5532 发表于 2011-9-23 18:33 | 显示全部楼层
我还是很纠结啊很纠结
为什么多了一层嵌套就不能读取P0数值呢?链接求指导!!
https://bbs.21ic.com/frame.php?frameon=yes&referer=http%3A//bbs.21ic.com/iclist-11-1.html
xianxian314 发表于 2011-9-22 21:06


对不起,我不是神,我找问题是靠“找”,不是靠“猜”
hjs1618 发表于 2011-9-24 09:47 | 显示全部楼层
原生态裸奔是什么意思?
nipenghao 发表于 2011-10-13 21:25 | 显示全部楼层
等待续集
PaperKite 发表于 2011-10-14 08:52 | 显示全部楼层
费心啦,谢谢
lxfstephen 发表于 2011-10-14 16:59 | 显示全部楼层
学习了~!顶起来~!
lj9010 发表于 2011-10-15 09:34 | 显示全部楼层
好贴、对我们这些不能再菜的人来说要好好反思了!
kodec2104 发表于 2011-11-1 13:44 | 显示全部楼层
楼主辛苦了,我受益匪浅!
sjl2006 发表于 2011-11-1 15:27 | 显示全部楼层
关于楼主的这个bug:
for (i=0;i<100;i++)
{
  _asm_func();
}
我提个小意见:为什么不在_asm_func()中对用到的通用寄存器做备份呢?我们无法确定编译器会用栈还是寄存器存储临时变量。
几个月前我们也遇到过一个诡异的野指针问题,只要开二级优化就会出现(PPC上的,gnu4.3.3)。最后定位发现在一个C函数流程中,r23(一个函数返回的局部指针)被意外修改。那时我们首先怀疑的是编译器,因为这个问题是更新了编译器才出现的,而且只有开优化才有。但是最后单步发现还是代码的问题:在这个函数流程中出现了data tlb miss,在tlb miss中断中(汇编写的)刚好写了r23,而且写之前没备份,搞坏了那个指针。巧的是,如果不开优化,反汇编出来发现r23根本没被使用,代码会再次从栈里取指针,所以不出这个问题。
这个bug让我深刻体会到,C和汇编混合编程时需要格外小心。
lantianplan 发表于 2011-11-2 11:59 | 显示全部楼层
学习。
zhw110104 发表于 2011-11-2 17:17 | 显示全部楼层
老师辛苦了啊
kobesff 发表于 2011-11-12 19:56 | 显示全部楼层
好贴。
cyc200267 发表于 2011-11-12 23:24 | 显示全部楼层
经典之谈啊
sunocean 发表于 2011-11-19 08:38 | 显示全部楼层
MARK,新手飘过
yanguang_1261 发表于 2011-11-19 10:58 | 显示全部楼层
学习了,但是有些地方还是看不懂,水平还是不行呀得继续努力。
newsolider1 发表于 2011-11-19 12:50 | 显示全部楼层
newsolider1 发表于 2011-11-19 13:14 | 显示全部楼层
一心爱你 发表于 2011-11-19 15:11 | 显示全部楼层
本帖 必须要收藏的
sqd5857 发表于 2011-11-19 16:12 | 显示全部楼层
分析的还可以。。。。仁者见仁拉
nayaix 发表于 2011-11-19 17:24 | 显示全部楼层
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部