We can just look at the generated assembly to find out. This code:
int subtractFive(int num) {
return num -5;
}
int main(int argc, char *argv[]) {
return subtractFive(argc);
}
compiled with g++ -O2gives
leal -5(%rdi), %eax
ret
, . inlining.
, , , , .
int subtractFive(int num) {
return num -5;
}
int foo(int i) {
return subtractFive(i) * 5;
}
int main(int argc, char *argv[]) {
return foo(argc);
}
-
leal -25(%rdi,%rdi,4), %eax
ret
, . foo , ( ) (Live).
, , . ,
int subtractFive(int num) {
return num -5;
}
int foo(int i) {
return subtractFive(i) * 5;
}
int main() {
return foo(7);
}
mov eax, 10
ret
int main () {
return 10;
}
, , , ( ) , .