AArch64: Add half float view to V registers

AArch64 can fill the vector registers with half precision floats.
Add a view for this.

Add builtin type ieee half and connect this to the existing
floatformats_ieee_half.

gdb/ChangeLog:

2019-05-14  Alan Hayward  <alan.hayward@arm.com>

	* aarch64-tdep.c (aarch64_vnh_type): Add half view.
	(aarch64_vnv_type): Likewise.
	* target-descriptions.c (make_gdb_type): Add TDESC_TYPE_IEEE_HALF.
	* common/tdesc.c: Likewise.
	* common/tdesc.h (enum tdesc_type_kind): Likewise.
	* features/aarch64-fpu.c (create_feature_aarch64_fpu): Regenerate.
	* features/aarch64-fpu.xml: Add ieee half view.
	* features/aarch64-sve.c (create_feature_aarch64_fpu): Likewise.
	* gdbtypes.c (gdbtypes_post_init): Add builtin_half
	* gdbtypes.h (struct builtin_type): Likewise.
	(struct objfile_type): Likewise.
This commit is contained in:
Alan Hayward
2019-05-14 10:09:05 +01:00
parent 2764128dee
commit a6d0f2490c
10 changed files with 43 additions and 0 deletions

View File

@@ -1595,6 +1595,7 @@ struct builtin_type
struct type *builtin_unsigned_short;
struct type *builtin_unsigned_int;
struct type *builtin_unsigned_long;
struct type *builtin_half;
struct type *builtin_float;
struct type *builtin_double;
struct type *builtin_long_double;
@@ -1690,6 +1691,7 @@ struct objfile_type
struct type *builtin_unsigned_int;
struct type *builtin_unsigned_long;
struct type *builtin_unsigned_long_long;
struct type *builtin_half;
struct type *builtin_float;
struct type *builtin_double;
struct type *builtin_long_double;