* New clang 7.0 assembler rejects deprecated op code.
s/fldmiad/vldmia/
s/fstmiad/vstmia/
s/fstmfdd sp!,/vpush/
Bug:
72412030
Test: make checkbuild, verified identical output code
Change-Id: I2086050bb6f966c13de8aef37f78a5d7d36b0b75
cmp r0, #3
sub ip, fp, #64
flddle d0, [ip]
- fldmiadgt ip, {d0-d7}
+ vldmiagt ip, {d0-d7}
LSYM(Lbase_args):
@ move first 4 parameters in registers
cmp r3, #FFI_TYPE_STRUCT_VFP_FLOAT
cmpne r3, #FFI_TYPE_STRUCT_VFP_DOUBLE
- fstmiadeq r2, {d0-d3}
+ vstmiaeq r2, {d0-d3}
LSYM(Lepilogue_vfp):
RETLDM "r0-r3,fp"
ARM_FUNC_START(ffi_closure_VFP)
- fstmfdd sp!, {d0-d7}
+ vpush {d0-d7}
@ r0-r3, then d0-d7
UNWIND .pad #80
add ip, sp, #80
ldmia sp, {r0, r1}
b .Lclosure_epilogue_vfp
.Lretfloat_struct_vfp:
- fldmiad sp, {d0-d1}
+ vldmia sp, {d0-d1}
b .Lclosure_epilogue_vfp
.Lretdouble_struct_vfp:
- fldmiad sp, {d0-d3}
+ vldmia sp, {d0-d3}
b .Lclosure_epilogue_vfp
.ffi_closure_VFP_end: