|
你所講的arm code應該是指arm的組語(組合語言)% j/ m0 u1 n( v8 R& T- m
不論是c或c++都能編譯成arm的code... @o@ c, c++也能編成i386的code...6 `9 }4 h( ?/ X# `+ V$ ?, i; v
x/ `! h7 K5 J* \! h1 y- P我想你想說的是"有對應給arm用的c/c++ compiler工具可以使用" 可以讓你在異質的環境下(e.g. i386)去編譯出arm processor能跑的執行檔, 這叫cross compile, 這部份是大多數嵌入式發展會採用的模式1 [/ x2 Y1 l+ N! q7 l
+ D- V8 N8 X2 ` U; O5 k
在同一project部份c 部份組語的作法是為了performance/code size考量
; x# e9 g. i- L4 `4 b4 T
4 @% @6 `. a' {/ b你所講的ACD應該是指ADS
5 Z4 V$ b. l4 z" ]# Q. J! P
5 D7 H, T. c; X5 r! N8 b作性能分析的工具叫profiler, 一般軟體用的性能分析工具都是叫這名字8 ?. R- m( i9 L: A8 ^
3 |% B2 L0 i# L7 C* o
ARM原廠的tool不便宜, 也許你會想用GNU toolchain, 但兩者的語法及記憶體配置檔寫法有所差異
" [+ Q7 s) d5 A: W4 \$ m. B2 A1 L4 ?3 o% Y' g! `7 d
你的問題可能要去翻翻看windows中的__fastcall是怎樣定義的, (去翻標頭檔), 這些type都是用最基本的int去定出來的"給人看的", 翻到最底層, 就會通過去了 |
|