9 struct tdesc_feature *feature;
12 tdesc_type_with_fields *type_with_fields;
13 type_with_fields = tdesc_create_union (feature,
"riscv_double");
14 tdesc_type *field_type;
15 field_type = tdesc_named_type (feature,
"ieee_single");
16 tdesc_add_field (type_with_fields,
"float", field_type);
17 field_type = tdesc_named_type (feature,
"ieee_double");
18 tdesc_add_field (type_with_fields,
"double", field_type);
21 tdesc_create_reg (feature,
"ft0",
regnum++, 1, NULL, 64,
"riscv_double");
22 tdesc_create_reg (feature,
"ft1",
regnum++, 1, NULL, 64,
"riscv_double");
23 tdesc_create_reg (feature,
"ft2",
regnum++, 1, NULL, 64,
"riscv_double");
24 tdesc_create_reg (feature,
"ft3",
regnum++, 1, NULL, 64,
"riscv_double");
25 tdesc_create_reg (feature,
"ft4",
regnum++, 1, NULL, 64,
"riscv_double");
26 tdesc_create_reg (feature,
"ft5",
regnum++, 1, NULL, 64,
"riscv_double");
27 tdesc_create_reg (feature,
"ft6",
regnum++, 1, NULL, 64,
"riscv_double");
28 tdesc_create_reg (feature,
"ft7",
regnum++, 1, NULL, 64,
"riscv_double");
29 tdesc_create_reg (feature,
"fs0",
regnum++, 1, NULL, 64,
"riscv_double");
30 tdesc_create_reg (feature,
"fs1",
regnum++, 1, NULL, 64,
"riscv_double");
31 tdesc_create_reg (feature,
"fa0",
regnum++, 1, NULL, 64,
"riscv_double");
32 tdesc_create_reg (feature,
"fa1",
regnum++, 1, NULL, 64,
"riscv_double");
33 tdesc_create_reg (feature,
"fa2",
regnum++, 1, NULL, 64,
"riscv_double");
34 tdesc_create_reg (feature,
"fa3",
regnum++, 1, NULL, 64,
"riscv_double");
35 tdesc_create_reg (feature,
"fa4",
regnum++, 1, NULL, 64,
"riscv_double");
36 tdesc_create_reg (feature,
"fa5",
regnum++, 1, NULL, 64,
"riscv_double");
37 tdesc_create_reg (feature,
"fa6",
regnum++, 1, NULL, 64,
"riscv_double");
38 tdesc_create_reg (feature,
"fa7",
regnum++, 1, NULL, 64,
"riscv_double");
39 tdesc_create_reg (feature,
"fs2",
regnum++, 1, NULL, 64,
"riscv_double");
40 tdesc_create_reg (feature,
"fs3",
regnum++, 1, NULL, 64,
"riscv_double");
41 tdesc_create_reg (feature,
"fs4",
regnum++, 1, NULL, 64,
"riscv_double");
42 tdesc_create_reg (feature,
"fs5",
regnum++, 1, NULL, 64,
"riscv_double");
43 tdesc_create_reg (feature,
"fs6",
regnum++, 1, NULL, 64,
"riscv_double");
44 tdesc_create_reg (feature,
"fs7",
regnum++, 1, NULL, 64,
"riscv_double");
45 tdesc_create_reg (feature,
"fs8",
regnum++, 1, NULL, 64,
"riscv_double");
46 tdesc_create_reg (feature,
"fs9",
regnum++, 1, NULL, 64,
"riscv_double");
47 tdesc_create_reg (feature,
"fs10",
regnum++, 1, NULL, 64,
"riscv_double");
48 tdesc_create_reg (feature,
"fs11",
regnum++, 1, NULL, 64,
"riscv_double");
49 tdesc_create_reg (feature,
"ft8",
regnum++, 1, NULL, 64,
"riscv_double");
50 tdesc_create_reg (feature,
"ft9",
regnum++, 1, NULL, 64,
"riscv_double");
51 tdesc_create_reg (feature,
"ft10",
regnum++, 1, NULL, 64,
"riscv_double");
52 tdesc_create_reg (feature,
"ft11",
regnum++, 1, NULL, 64,
"riscv_double");
54 tdesc_create_reg (feature,
"fcsr",
regnum++, 1, NULL, 32,
"int");