我主要是在工作中编写嵌入式代码。我们有一个大型的长期项目,已经开发了几代,现在为其编写的处理器正在停产,甚至可能不可能继续使用来自同一制造商的处理器。(可能是从TI过渡到瑞萨FPU微处理器)。部分问题是有些代码是用汇编语言编写的。
我正在寻找尽可能无痛地过渡的方法,如果将来需要这样的过渡,我会让它变得更顺利。
你有什么建议吗?
发布于 2009-02-26 11:53:57
生成尽可能多的代码的通用C版本。
如果你的意图是在手工优化的汇编中实现最终的实现,这看起来可能是浪费时间,但实际上并非如此。
当优化一个新的目标时,你可以重写汇编中的关键部分,但是拥有一个C版本首先会让你在每个新的目标上快速启动和运行一些东西,然后提供一个可读的参考实现来进行优化时的比较,这两个都会让你的生活变得非常非常容易。
此外,要意识到没有必要对所有东西都进行手工优化汇编,只需要花费最多时间/占用最多空间的代码部分即可。用汇编语言编写一个大型项目的所有内容几乎肯定是不必要的浪费精力。剩下的只是普通的C,但是你不知道你应该关注什么,直到你的C版本启动并运行,你可以分析它。你可以猜,但你不会知道。
https://stackoverflow.com/questions/590192
复制相似问题