OE编译出来的编译器,a8平台编译时候,gcc的浮点默认参数

源码:
#include <stdio.h>

float ccc(float d1, float d2)
{
printf("%f %f %fn", d1, d2, d1/d2);
return (float)(d1 / d2);
}

int main(void)
{
float d1 = 10.3;
float d2 = 2.0;
float dret = ccc(d1, d2);
return 0;
}


编译参数
加入:CPPFLAGS = -march=armv7-a -mtune=cortex-a8 -mfpu=vfp -mfloat-abi=softfp -ftree-vectorize
编译汇编如下
00008380 <ccc>:
8380: e92d4800 push {fp, lr}
8384: e28db004 add fp, sp, #4
8388: e24dd018 sub sp, sp, #24
838c: e50b0008 str r0, [fp, #-8]
8390: e50b100c str r1, [fp, #-12]
8394: e59f3050 ldr r3, [pc, #80] ; 83ec <ccc+0x6c>
8398: ed5b7a02 vldr s15, [fp, #-8]
839c: eeb75ae7 vcvt.f64.f32 d5, s15
83a0: ed5b7a03 vldr s15, [fp, #-12]
83a4: eeb76ae7 vcvt.f64.f32 d6, s15
83a8: ed1b7a02 vldr s14, [fp, #-8]
83ac: ed5b7a03 vldr s15, [fp, #-12]
83b0: eec77a27 vdiv.f32 s15, s14, s15
83b4: eeb77ae7 vcvt.f64.f32 d7, s15
83b8: ed8d6b00 vstr d6, [sp]
83bc: ed8d7b02 vstr d7, [sp, #8]
83c0: e1a00003 mov r0, r3
83c4: ec532b15 vmov r2, r3, d5
83c8: ebffffbd bl 82c4 <_init+0x44>
83cc: ed1b7a02 vldr s14, [fp, #-8]
83d0: ed5b7a03 vldr s15, [fp, #-12]
83d4: eec77a27 vdiv.f32 s15, s14, s15
83d8: ee173a90 vmov r3, s15
83dc: e1a00003 mov r0, r3
83e0: e24bd004 sub sp, fp, #4
83e4: e8bd4800 pop {fp, lr}
83e8: e12fff1e bx lr
83ec: 000084a8 andeq r8, r0, r8, lsr #9


不加入此参数
00008428 <ccc>:
8428: e92d48f0 push {r4, r5, r6, r7, fp, lr}
842c: e28db014 add fp, sp, #20
8430: e24dd018 sub sp, sp, #24
8434: e50b0018 str r0, [fp, #-24]
8438: e50b101c str r1, [fp, #-28]
843c: e51b0018 ldr r0, [fp, #-24]
8440: eb0000ee bl 8800 <__aeabi_f2d>
8444: e1a04000 mov r4, r0
8448: e1a05001 mov r5, r1
844c: e51b001c ldr r0, [fp, #-28]
8450: eb0000ea bl 8800 <__aeabi_f2d>
8454: e1a06000 mov r6, r0
8458: e1a07001 mov r7, r1
845c: e51b0018 ldr r0, [fp, #-24]
8460: e51b101c ldr r1, [fp, #-28]
8464: eb000178 bl 8a4c <__aeabi_fdiv>
8468: e1a03000 mov r3, r0
846c: e1a00003 mov r0, r3
8470: eb0000e2 bl 8800 <__aeabi_f2d>
8474: e1a02000 mov r2, r0
8478: e1a03001 mov r3, r1
847c: e88d00c0 stm sp, {r6, r7}
8480: e58d2008 str r2, [sp, #8]
8484: e58d300c str r3, [sp, #12]
8488: e59f0024 ldr r0, [pc, #36] ; 84b4 <ccc+0x8c>
848c: e1a02004 mov r2, r4
8490: e1a03005 mov r3, r5
8494: ebffff8a bl 82c4 <_init+0x20>
8498: e51b0018 ldr r0, [fp, #-24]
849c: e51b101c ldr r1, [fp, #-28]
84a0: eb000169 bl 8a4c <__aeabi_fdiv>
84a4: e1a03000 mov r3, r0
84a8: e1a00003 mov r0, r3
84ac: e24bd014 sub sp, fp, #20
84b0: e8bd88f0 pop {r4, r5, r6, r7, fp, pc}
84b4: 00008c20 andeq r8, r0, r0, lsr #24