找回密码
 立即注册
查看: 473|回复: 9

SDCC不支持REMOVEUNUSED?|不支持,需手动删除同文件中UNUSED

[复制链接]
  • 打卡等级:常住居民III
  • 打卡总天数:163
  • 最近打卡:2025-05-02 13:26:59
已绑定手机

56

主题

1319

回帖

2942

积分

荣誉版主

无情的代码机器

积分
2942
发表于 2024-12-1 12:39:40 | 显示全部楼层 |阅读模式
翻阅手册,一顿搜索无果。有大佬知道如何sdcc下REMOVEUNUSED不?



--20241202
不支持,超内存则需手动删除同文件中UNUSED



--20250313
查阅手册发现个除手动屏蔽闲置函数外新解决办法,--stack-auto


三天不学习,赶不上刘少奇~
回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:123
  • 最近打卡:2025-04-19 16:12:35
已绑定手机

60

主题

777

回帖

4001

积分

论坛元老

自定义头衔

积分
4001
发表于 2024-12-1 13:44:44 | 显示全部楼层
具体的flag当然不一样,REMOVEUNUSED是Keil PK51工具链的LX51这个程序的控制flag。不是其他软件的
联系我请点击左下角的【回复】按钮,否则我收不到消息提
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:423
  • 最近打卡:2025-05-02 07:55:56
已绑定手机

19

主题

3191

回帖

4872

积分

论坛元老

积分
4872
发表于 2024-12-1 14:34:54 来自手机 | 显示全部楼层
看了sdccman好像没有相关命令
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:123
  • 最近打卡:2025-04-19 16:12:35
已绑定手机

60

主题

777

回帖

4001

积分

论坛元老

自定义头衔

积分
4001
发表于 2024-12-1 15:25:06 | 显示全部楼层
本帖最后由 VCC 于 2024-12-1 15:35 编辑
so*** 发表于 2024-12-1 14:34
看了sdccman好像没有相关命令

有可能已经有这个了

我看dead code elimination有点像
截图202412011525099857.jpg


附SDCC文档
sdccman.pdf (1.06 MB, 下载次数: 29)



进一步查了一下,应该就是这个的

截图202412011528536520.jpg
截图202412011534464060.jpg
不过我没有SDCC使用经验,建议楼主先确定一下,它是不是会默认过滤掉未使用的函数呢?还是只过滤函数内未使用的代码段?

联系我请点击左下角的【回复】按钮,否则我收不到消息提
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:163
  • 最近打卡:2025-05-02 13:26:59
已绑定手机

56

主题

1319

回帖

2942

积分

荣誉版主

无情的代码机器

积分
2942
发表于 2024-12-1 16:33:53 | 显示全部楼层
不会默认过滤掉未使用的函数,这是头疼的地方。像w25qxx这种工具代码,几十个函数大多数没用到它全编译进去直接报错
?ASlink-Error-Could not get xxx consecutive bytes in internal RAM for area DSEG.

测试一些gcc的flag也不认
三天不学习,赶不上刘少奇~
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:123
  • 最近打卡:2025-04-19 16:12:35
已绑定手机

60

主题

777

回帖

4001

积分

论坛元老

自定义头衔

积分
4001
发表于 2024-12-1 17:23:03 | 显示全部楼层
本帖最后由 VCC 于 2024-12-1 17:27 编辑
erci*** 发表于 2024-12-1 16:33
不会默认过滤掉未使用的函数,这是头疼的地方。像w25qxx这种工具代码,几十个函数大多数没用到它全编译进去 ...

还是用keil呗


话说,你使用SDCC的动机是?

点评

移植例程包,给51大舞台添砖加瓦。  详情 回复 发表于 2024-12-1 17:43
联系我请点击左下角的【回复】按钮,否则我收不到消息提
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:163
  • 最近打卡:2025-05-02 13:26:59
已绑定手机

56

主题

1319

回帖

2942

积分

荣誉版主

无情的代码机器

积分
2942
发表于 2024-12-1 17:43:17 | 显示全部楼层

移植例程包,给51大舞台添砖加瓦。
三天不学习,赶不上刘少奇~
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:123
  • 最近打卡:2025-04-19 16:12:35
已绑定手机

60

主题

777

回帖

4001

积分

论坛元老

自定义头衔

积分
4001
发表于 2024-12-1 17:49:06 | 显示全部楼层
erci*** 发表于 2024-12-1 17:43
移植例程包,给51大舞台添砖加瓦。

好好好!添砖加瓦!

联系我请点击左下角的【回复】按钮,否则我收不到消息提
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:163
  • 最近打卡:2025-05-02 13:26:59
已绑定手机

56

主题

1319

回帖

2942

积分

荣誉版主

无情的代码机器

积分
2942
发表于 2024-12-1 19:18:23 | 显示全部楼层
延申阅读:
https://sourceforge.net/p/sdcc/feature-requests/452/
https://sourceforge.net/p/sdcc/d ... 87b4/?limit=25#d6c6

链接中提到的先编译个.lib再链接,经测试需要把函数分布在尽量多的c文件中,最好一个函数一个C文件,生成 rel,编译lib,再链接。同一个C文件中的未使用函数还是不会优化。

点评

学习  详情 回复 发表于 2024-12-1 21:11
三天不学习,赶不上刘少奇~
回复 支持 1 反对 0

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:424
  • 最近打卡:2025-05-02 14:37:11
已绑定手机

77

主题

4850

回帖

8384

积分

超级版主

DebugLab

积分
8384
发表于 2024-12-1 21:11:11 | 显示全部楼层
erci*** 发表于 2024-12-1 19:18
延申阅读:
https://sourceforge.net/p/sdcc/feature-requests/452/
https://sourceforge.net/p/sdcc/discu ...

学习
DebugLab
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-2 22:08 , Processed in 0.127078 second(s), 110 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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