froofyJIT,來自 http://fzort.org/bi/sw/froofy/先說說 GNU Lightning,來自 http://www.gnu.org/software/lightning/lightning.html一個GNU的項目,目的是可以在C/C++中寫跨CPU的匯編代碼,目前支持CPU有x86, SPARC和PowerPC (但浮點數操作只支持x86系列)。個人覺得還是挺有意思的一個項目。有時候一些關鍵操作還是需要匯編來處理一下,例如加解密運算、圖像處理等等。以前都是直接嵌套匯編,但這樣一來就會失去C代碼的通用性;又或者通過#define來實現多個CPU下的匯編實現。如果用GNU Lightning,至少代碼統一,管理上好很多。不過換來的代價就是要多學一門“匯編”了。GNU Lightning寫的代碼也不是很好看,原因是它本身是C代碼,調用的是C函數形式。froofyJIT就是解決這個問題,下面是froofyJIT重寫GNU Lightning中的計算費波納數列的代碼的節選:GNU Lightning:
froofyJIT: