|
你所講的arm code應該是指arm的組語(組合語言)
7 u. s( \" Z+ _不論是c或c++都能編譯成arm的code... @o@ c, c++也能編成i386的code...- y R! _0 c2 F( F* c" ?% U. b/ \( Y
3 G, R3 u- l2 |0 u4 a' \
我想你想說的是"有對應給arm用的c/c++ compiler工具可以使用" 可以讓你在異質的環境下(e.g. i386)去編譯出arm processor能跑的執行檔, 這叫cross compile, 這部份是大多數嵌入式發展會採用的模式& i. E H0 A" X" k* _: n1 B, x/ H8 I
0 \' B, t+ x! s8 U
在同一project部份c 部份組語的作法是為了performance/code size考量1 ]$ V$ _( d* I5 g8 p
# `! h/ W5 A H `8 ~你所講的ACD應該是指ADS6 o7 _' ?& m( K5 |0 {" ?$ D! ~
" h' }, t$ F7 |5 d作性能分析的工具叫profiler, 一般軟體用的性能分析工具都是叫這名字% x2 ?7 s. T: I* J0 Q6 E
9 ]* r8 q. X" V: C& aARM原廠的tool不便宜, 也許你會想用GNU toolchain, 但兩者的語法及記憶體配置檔寫法有所差異# k) `9 z5 @- [1 X
/ O R: ~' v( T. S! X你的問題可能要去翻翻看windows中的__fastcall是怎樣定義的, (去翻標頭檔), 這些type都是用最基本的int去定出來的"給人看的", 翻到最底層, 就會通過去了 |
|