我剛剛看一個非常簡單的SPARC彙編輸出,我從本C PROGRAMM有:拆解GCC輸出用來做「呼叫0」代替「呼叫功能失調」,但正常工作
int addition_func(int a, int b)
{
return(a+b);
}
void main()
{
int a = 20;
int b = 19;
int res;
res = addition_func(a, b);
}
拆卸.text段的:
00000000 <addition_func>:
0: 81 c3 e0 08 retl
4: 90 02 00 09 add %o0, %o1, %o0
00000008 <main>:
8: 90 10 20 14 mov 0x14, %o0
c: 92 10 20 13 mov 0x13, %o1
10: 82 13 c0 00 mov %o7, %g1
14: 40 00 00 00 call 14 <main+0xc>
18: 9e 10 40 00 mov %g1, %o7
1c: 01 00 00 00 nop
我不明白爲什麼 「呼叫」 說明書上說:
call 14 <main+0xc>
爲什麼不:
call 0 <addition_func+0x0>
程序工作正常,但是,該輸出將不會做出太大的意義 給我。任何建議爲什麼這樣處理?
感謝
可以使用更具描述性的主題.... – 2010-07-21 15:05:36