r243707 - in /trunk/gcc: ChangeLog config/arm/a...
rearnsha@gcc.gnu.org
rearnsha@gcc.gnu.org
Thu Dec 15 15:52:00 GMT 2016
Author: rearnsha
Date: Thu Dec 15 15:52:42 2016
New Revision: 243707
URL: https://gcc.gnu.org/viewcvs?rev=243707&root=gcc&view=rev
Log:
[arm] Eliminate vfp_reg_type
Remove the VFP_REGS field by converting its meanings into flag
attributes. The new flag attributes build on each other describing
increasing capabilities. This allows us to do a better job when
inlining functions with differing requiremetns on the fpu environment:
we can now inline A into B if B has at least the same register set
properties as B (previously we required identical register set
properties).
* arm.h (vfp_reg_type): Delete.
(TARGET_FPU_REGS): Delete.
(arm_fpu_desc): Delete regs field.
(FPU_FL_NONE, FPU_FL_NEON, FPU_FL_FP16, FPU_FL_CRYPTO): Use unsigned
values.
(FPU_FL_DBL, FPU_FL_D32): Define.
(TARGET_VFPD32): Use feature test.
(TARGET_VFP_SINGLE): Likewise.
(TARGET_VFP_DOUBLE): Likewise.
* arm-fpus.def: Update all entries for new feature bits.
* arm.c (all_fpus): Update initializer macro.
(arm_can_inline_p): Remove test on fpu regs.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/arm/arm-fpus.def
trunk/gcc/config/arm/arm.c
trunk/gcc/config/arm/arm.h
More information about the Gcc-cvs
mailing list