|
你所講的arm code應該是指arm的組語(組合語言)/ \. W) z# ?; _! {# W% U
不論是c或c++都能編譯成arm的code... @o@ c, c++也能編成i386的code...
, A# |% {) `1 ^) n A% a
9 i, S$ b. ^3 S. X我想你想說的是"有對應給arm用的c/c++ compiler工具可以使用" 可以讓你在異質的環境下(e.g. i386)去編譯出arm processor能跑的執行檔, 這叫cross compile, 這部份是大多數嵌入式發展會採用的模式
+ B5 J# _ v- A& V' O- X# ^
* |; z g, W7 K0 q3 t& x在同一project部份c 部份組語的作法是為了performance/code size考量
8 B4 M/ v$ |' Y* `; _1 j H
# {! ^" s$ O0 g, e" }( u6 F: S! j7 j- |你所講的ACD應該是指ADS- L7 R- O! Z4 y# G: w$ c7 z
6 V* f! N, g0 ?3 d) |
作性能分析的工具叫profiler, 一般軟體用的性能分析工具都是叫這名字0 d) Q9 T/ c) B' f. q1 [* Q+ ?
2 F7 T+ {& l. w! e
ARM原廠的tool不便宜, 也許你會想用GNU toolchain, 但兩者的語法及記憶體配置檔寫法有所差異4 \3 Q+ U' w0 z( e! `
* W: }* l* ^2 |你的問題可能要去翻翻看windows中的__fastcall是怎樣定義的, (去翻標頭檔), 這些type都是用最基本的int去定出來的"給人看的", 翻到最底層, 就會通過去了 |
|