完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我的代码显示创建无限循环(线位于分支线以上)
switch语句的无辜的结束: TSH案: /一些计算 打破;默认:break;} 和组装: 664 01e6 fff7feff BL mymemcpy 665。lvl57:217:,UART。C *打破;666. LOC 1 217 0 667 01ea 00e0 B。L23 668. lvl58:669. L26:670。L80:671 01ec事项B。L80 672. lvl59:673. L23:674。lbe23:231:,UART。C * } 675。赛段677需要LOC 1 231 0 676 @ SP。lvl60:67801ee f7bd流行{ R0、R1、R2、R4、R5、R6、R7、PC } 679。L85: 以上来自于百度翻译 以下为原文 The code I show create endless loop (line 671 branch to line above) Innocent end of switch statement: case TSH: // some calculations break; default: break; } And assembly: 664 01e6 FFF7FEFF bl mymemcpy 665 .LVL57: 217:.Uart.c **** break; 666 .loc 1 217 0 667 01ea 00E0 b .L23 668 .LVL58: 669 .L26: 670 .L80: 671 01ec FEE7 b .L80 672 .LVL59: 673 .L23: 674 .LBE23: 231:.Uart.c **** } 675 .loc 1 231 0 676 @ sp needed for prologue 677 .LVL60: 678 01ee F7BD pop {r0, r1, r2, r4, r5, r6, r7, pc} 679 .L85: |
|
相关推荐
7个回答
|
|
看起来好像是没有文件的陷阱抓住错误的跳跃。
我追踪可能发生的情况。我找到了Label.L26在其他函数中引用 在这个函数中有{{}同时(rddx)!= WRUNDX) 当条件为真而不是跳到循环开始时,它跳转到不同函数的SUSEC语句的末尾。 以上来自于百度翻译 以下为原文 It looks as if undocumented trap to catch wrong jumps I trace the condition it may happen. I found label .L26 is referenced in other function unrelated at all In this function there is do{}while(rdindx != wrindx) when condition is true instead of jump to begin of loop it jumps to end of swithc statement in different function |
|
|
|
我找到了其他的原因:
不知何故,复制粘贴粘贴了两次代码,产生的代码是 空ParseInput(CMD*PTR){(rddx)!{WRUNDX){} UTIN 16和= 0;UITN8印记; …… 我不知道它编译的时候甚至没有警告。 然而这是无尽的循环 以上来自于百度翻译 以下为原文 I found the reason somwhere else: Somehow the copy & paste inserted the code twice, and the code produced was void ParseInput(Cmd* ptr){ while(rdindx != wrindx){ } uint16 sum = 0; uint8 indx; ........................... I have no idea while it compiled without even warning. However it was the endless loop |
|
|
|
Sego
我认为你可以确信GCC没有产生错误的代码,GCC被用在十亿的手机中,所以已经发现了任何明显的bug。从代码片段中,我看不出真正的错误在哪里,可能你已经设置了一个优化,有时会导致结果正确,但很难理解。 鲍勃 以上来自于百度翻译 以下为原文 Sego, I think you can be darn sure that GCC is not producing wrong code, GCC is used in a billion of cellphones, so any obvious bug would have been found already. From your code snippets I cannot see where the real error has been, probably you've set an optimization which sometimes lead to results which work correctly but are difficult to understand. Bob |
|
|
|
鲍伯,如果我谷歌“GCC ErATA”,我得到很多点击,一些相当近?
如果我去http://gcc.gnu.org/错误/修复更多信息。 似乎仍然是一个进展中的工作。 问候,Dana。 以上来自于百度翻译 以下为原文 Bob, if I google "gcc eratta" I get lots of hits, some fairly recent ? If I go to http://gcc.gnu.org/ more info on bugs/fixes. Seems like still a work in progress. Regards, Dana. |
|
|
|
我说“任何明显的bug”
但是当你花时间去查看GCC中最近的漏洞时,ARM核心只有两个。大多数问题都涉及到应用的标志、Linux和x86或编译器构建的行为。我刚刚完成了一个相当复杂的项目,它深入到ARM体系结构和我发现的错误中。 鲍勃 以上来自于百度翻译 以下为原文 I said "any obvious bug" But when you take the time to go through the recent / open bugs in GCC there are just two for the ARM-core. Most of the issues are related to the behavour of flags applied, linux and x86 or compiler build. I just finished a rather complicated project that dwelves deep into ARM architecture and the only errors I found where my own ones. Bob |
|
|
|
我相信你的话,不会再有明显的错误了。
声明太宽泛了。 所以我的假设是,不是所有的bug(一旦被发现)变得明显吗?我想我会的 把这个交给诺贝尔,我想我手上有个赢家…… 问候,Dana。 以上来自于百度翻译 以下为原文 I will take your word there will be no more obvious bugs, just thought that was too broad a statement. So my postulate is this, do not all bugs (once discovered) become obvious ? I think I will submit this to Nobel comittee, I think I have a winner on my hands...... Regards, Dana. |
|
|
|
嗯…我必须仔细考虑,但我不明白你为什么需要***????
鲍勃 以上来自于百度翻译 以下为原文 Hmmmmm... I have to think that over, but I do not understand why you need dynamite??? Bob |
|
|
|
只有小组成员才能发言,加入小组>>
752个成员聚集在这个小组
加入小组2075 浏览 1 评论
1829 浏览 1 评论
3645 浏览 1 评论
请问可以直接使用来自FX2LP固件的端点向主机FIFO写入数据吗?
1766 浏览 6 评论
1517 浏览 1 评论
CY8C4025LQI在程序中调用函数,通过示波器观察SCL引脚波形,无法将pin0.4(SCL)下拉是什么原因导致?
517浏览 2评论
CYUSB3065焊接到USB3.0 TYPE-B口的焊接触点就无法使用是什么原因导致的?
371浏览 2评论
CX3连接Camera修改分辨率之后,播放器无法播出camera的画面怎么解决?
413浏览 2评论
360浏览 2评论
使用stm32+cyw43438 wifi驱动whd,WHD驱动固件加载失败的原因?
868浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-30 00:19 , Processed in 1.083877 second(s), Total 94, Slave 75 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号