Question

Je l'écriture de code la plupart du temps intégré au travail. Nous avons un grand projet à long terme qui a été mis au point, et a plusieurs générations, et maintenant le processeur pour lequel il a été écrit est abandonnée et il pourrait être impossible même de continuer à utiliser des processeurs du même fabricant. (La transition sera probablement de TI à Renesas FPU-microprocesseurs). Une partie du problème est que du code est écrit en assembleur.
Je cherche des façons de faire la transition douloureuse possible, et le rendre plus fluide si une telle transition est nécessaire à l'avenir.
Que pouvez-vous suggérer?

Était-ce utile?

La solution

Produire une version générique C autant du code que possible.

Cela peut sembler une perte de temps si votre intention est la mise en œuvre finale dans l'assemblage optimisé à la main, mais il est vraiment vraiment pas.

Lors de l'optimisation d'une nouvelle cible, vous pouvez réécrire des sections clés dans l'assemblage, mais ayant une version C va d'abord vous laisser quelque chose et courir très vite sur chaque nouvelle cible, et de fournir d'autre part une implémentation de référence lisible à comparer lorsque l'optimisation, tous deux vous rendra la vie beaucoup plus facile.

De plus, il n'y a pas réaliser besoin de tout pour être assemblée à la main optimisée, seulement les sections de code où la plupart du temps est passé / qui prennent le plus d'espace. Pour écrire tout d'un grand projet dans l'assemblage est presque certainement perdre inutilement l'effort. Le reste peut simplement rester comme générique C. Mais vous ne saurez pas ce que vous devriez vous concentrer sur jusqu'à ce que votre version C est en cours d'exécution et vous pouvez le profil il. Vous pouvez le deviner, mais vous ne saurez pas.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top