|
你所講的arm code應該是指arm的組語(組合語言)9 ^) o* ^1 Y2 y6 G' r- Z
不論是c或c++都能編譯成arm的code... @o@ c, c++也能編成i386的code...4 T8 P6 R# b5 P7 u, ?
& V, h1 g& E5 t3 C+ W
我想你想說的是"有對應給arm用的c/c++ compiler工具可以使用" 可以讓你在異質的環境下(e.g. i386)去編譯出arm processor能跑的執行檔, 這叫cross compile, 這部份是大多數嵌入式發展會採用的模式
; d$ H/ Q" k2 k' z8 r" I5 j& q
# ^" ^: y& @8 _( H) P, B9 }在同一project部份c 部份組語的作法是為了performance/code size考量
5 l. o+ H; X& J4 v% i7 ^! W6 \4 L" n# u$ z# B- S1 b
你所講的ACD應該是指ADS
, H2 ]9 `7 z5 t6 b* ?3 w, ^! S {5 l, v2 U' I T6 G8 J
作性能分析的工具叫profiler, 一般軟體用的性能分析工具都是叫這名字
% \6 _9 _; A0 D y8 d( p1 Z5 {# Q% P5 f3 s6 {7 s; Z' I2 e3 i
ARM原廠的tool不便宜, 也許你會想用GNU toolchain, 但兩者的語法及記憶體配置檔寫法有所差異& `' n. L7 R, m# G
( b, n5 p- L6 N7 K6 W0 M& ~# o你的問題可能要去翻翻看windows中的__fastcall是怎樣定義的, (去翻標頭檔), 這些type都是用最基本的int去定出來的"給人看的", 翻到最底層, 就會通過去了 |
|