| 1 | /* THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi:set ro: |
| 2 | Original: arc-v2.xml */ |
| 3 | |
| 4 | #include "defs.h" |
| 5 | #include "osabi.h" |
| 6 | #include "target-descriptions.h" |
| 7 | |
| 8 | struct target_desc *tdesc_arc_v2; |
| 9 | static void |
| 10 | initialize_tdesc_arc_v2 (void) |
| 11 | { |
| 12 | struct target_desc *result = allocate_target_description (); |
| 13 | set_tdesc_architecture (result, bfd_scan_arch ("ARCv2")); |
| 14 | |
| 15 | struct tdesc_feature *feature; |
| 16 | |
| 17 | feature = tdesc_create_feature (result, "org.gnu.gdb.arc.core.v2"); |
| 18 | tdesc_create_reg (feature, "r0", 0, 1, NULL, 32, "int"); |
| 19 | tdesc_create_reg (feature, "r1", 1, 1, NULL, 32, "int"); |
| 20 | tdesc_create_reg (feature, "r2", 2, 1, NULL, 32, "int"); |
| 21 | tdesc_create_reg (feature, "r3", 3, 1, NULL, 32, "int"); |
| 22 | tdesc_create_reg (feature, "r4", 4, 1, NULL, 32, "int"); |
| 23 | tdesc_create_reg (feature, "r5", 5, 1, NULL, 32, "int"); |
| 24 | tdesc_create_reg (feature, "r6", 6, 1, NULL, 32, "int"); |
| 25 | tdesc_create_reg (feature, "r7", 7, 1, NULL, 32, "int"); |
| 26 | tdesc_create_reg (feature, "r8", 8, 1, NULL, 32, "int"); |
| 27 | tdesc_create_reg (feature, "r9", 9, 1, NULL, 32, "int"); |
| 28 | tdesc_create_reg (feature, "r10", 10, 1, NULL, 32, "int"); |
| 29 | tdesc_create_reg (feature, "r11", 11, 1, NULL, 32, "int"); |
| 30 | tdesc_create_reg (feature, "r12", 12, 1, NULL, 32, "int"); |
| 31 | tdesc_create_reg (feature, "r13", 13, 1, NULL, 32, "int"); |
| 32 | tdesc_create_reg (feature, "r14", 14, 1, NULL, 32, "int"); |
| 33 | tdesc_create_reg (feature, "r15", 15, 1, NULL, 32, "int"); |
| 34 | tdesc_create_reg (feature, "r16", 16, 1, NULL, 32, "int"); |
| 35 | tdesc_create_reg (feature, "r17", 17, 1, NULL, 32, "int"); |
| 36 | tdesc_create_reg (feature, "r18", 18, 1, NULL, 32, "int"); |
| 37 | tdesc_create_reg (feature, "r19", 19, 1, NULL, 32, "int"); |
| 38 | tdesc_create_reg (feature, "r20", 20, 1, NULL, 32, "int"); |
| 39 | tdesc_create_reg (feature, "r21", 21, 1, NULL, 32, "int"); |
| 40 | tdesc_create_reg (feature, "r22", 22, 1, NULL, 32, "int"); |
| 41 | tdesc_create_reg (feature, "r23", 23, 1, NULL, 32, "int"); |
| 42 | tdesc_create_reg (feature, "r24", 24, 1, NULL, 32, "int"); |
| 43 | tdesc_create_reg (feature, "r25", 25, 1, NULL, 32, "int"); |
| 44 | tdesc_create_reg (feature, "gp", 26, 1, NULL, 32, "data_ptr"); |
| 45 | tdesc_create_reg (feature, "fp", 27, 1, NULL, 32, "data_ptr"); |
| 46 | tdesc_create_reg (feature, "sp", 28, 1, NULL, 32, "data_ptr"); |
| 47 | tdesc_create_reg (feature, "ilink", 29, 1, NULL, 32, "code_ptr"); |
| 48 | tdesc_create_reg (feature, "r30", 30, 1, "", 32, "int"); |
| 49 | tdesc_create_reg (feature, "blink", 31, 1, NULL, 32, "code_ptr"); |
| 50 | tdesc_create_reg (feature, "lp_count", 32, 1, NULL, 32, "uint32"); |
| 51 | tdesc_create_reg (feature, "pcl", 33, 1, "", 32, "code_ptr"); |
| 52 | |
| 53 | feature = tdesc_create_feature (result, "org.gnu.gdb.arc.aux-minimal"); |
| 54 | struct tdesc_type *field_type; |
| 55 | struct tdesc_type *type; |
| 56 | type = tdesc_create_flags (feature, "status32_type", 4); |
| 57 | tdesc_add_flag (type, 0, "H"); |
| 58 | tdesc_add_bitfield (type, "E", 1, 4); |
| 59 | tdesc_add_flag (type, 5, "AE"); |
| 60 | tdesc_add_flag (type, 6, "DE"); |
| 61 | tdesc_add_flag (type, 7, "U"); |
| 62 | tdesc_add_flag (type, 8, "V"); |
| 63 | tdesc_add_flag (type, 9, "C"); |
| 64 | tdesc_add_flag (type, 10, "N"); |
| 65 | tdesc_add_flag (type, 11, "Z"); |
| 66 | tdesc_add_flag (type, 12, "L"); |
| 67 | tdesc_add_flag (type, 13, "DZ"); |
| 68 | tdesc_add_flag (type, 14, "SC"); |
| 69 | tdesc_add_flag (type, 15, "ES"); |
| 70 | tdesc_add_bitfield (type, "RB", 16, 18); |
| 71 | tdesc_add_flag (type, 19, "AD"); |
| 72 | tdesc_add_flag (type, 20, "US"); |
| 73 | tdesc_add_flag (type, 31, "IE"); |
| 74 | |
| 75 | tdesc_create_reg (feature, "pc", 34, 1, NULL, 32, "code_ptr"); |
| 76 | tdesc_create_reg (feature, "status32", 35, 1, NULL, 32, "status32_type"); |
| 77 | |
| 78 | tdesc_arc_v2 = result; |
| 79 | } |