#include <stdio.h>
//double Double2(double result);
int main(void)
{
double result;
printf("start\n");
result = Double2(2);
printf("%lf\n",result);
return 0;
}
double Double2(double result)
{
return result * result;
}
|
#include <stdio.h>
double Double2(double result);
int main(void)
{
double result;
printf("start\n");
result = Double2(2);
printf("%lf\n",result);
return 0;
}
double Double2(double result)
{
return result * result;
}
|
.file "test83.c"
.version "01.01"
gcc2_compiled.:
.section .rodata
.LC0:
.string "start\n"
.LC1:
.string "%lf\n"
.text
.align 4
.globl main
.type main,@function
main:
pushl %ebp
movl %esp,%ebp
subl $24,%esp
addl $-12,%esp
pushl $.LC0
call printf
addl $16,%esp
addl $-12,%esp
pushl $2
call Double2
addl $16,%esp
movl %eax,%eax
movl %eax,-12(%ebp)
fildl -12(%ebp)
fstpl -8(%ebp)
addl $-4,%esp
fldl -8(%ebp)
subl $8,%esp
fstpl (%esp)
pushl $.LC1
call printf
addl $16,%esp
xorl %eax,%eax
jmp .L2
.p2align 4,,7
.L2:
movl %ebp,%esp
popl %ebp
ret
.Lfe1:
.size main,.Lfe1-main
.align 4
.globl Double2
.type Double2,@function
Double2:
pushl %ebp
movl %esp,%ebp
fldl 8(%ebp)
fmull 8(%ebp)
jmp .L3
.p2align 4,,7
.L3:
movl %ebp,%esp
popl %ebp
ret
.Lfe2:
.size Double2,.Lfe2-Double2
.ident "GCC: (GNU) 2.95.3 20010315 (release)"
|
.file "test84.c"
.version "01.01"
gcc2_compiled.:
.section .rodata
.LC0:
.string "start\n"
.LC2:
.string "%lf\n"
.align 8
.LC1:
.long 0x0,0x40000000
.text
.align 4
.globl main
.type main,@function
main:
pushl %ebp
movl %esp,%ebp
subl $24,%esp
addl $-12,%esp
pushl $.LC0
call printf
addl $16,%esp
addl $-8,%esp
fldl .LC1
subl $8,%esp
fstpl (%esp)
call Double2
addl $16,%esp
fstpl -8(%ebp)
addl $-4,%esp
fldl -8(%ebp)
subl $8,%esp
fstpl (%esp)
pushl $.LC2
call printf
addl $16,%esp
xorl %eax,%eax
jmp .L2
.p2align 4,,7
.L2:
movl %ebp,%esp
popl %ebp
ret
.Lfe1:
.size main,.Lfe1-main
.align 4
.globl Double2
.type Double2,@function
Double2:
pushl %ebp
movl %esp,%ebp
fldl 8(%ebp)
fmull 8(%ebp)
jmp .L3
.p2align 4,,7
.L3:
movl %ebp,%esp
popl %ebp
ret
.Lfe2:
.size Double2,.Lfe2-Double2
.ident "GCC: (GNU) 2.95.3 20010315 (release)"
|