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