9 struct tdesc_feature *feature;
12 tdesc_type_with_fields *type_with_fields;
13 type_with_fields = tdesc_create_flags (feature,
"i386_eflags", 4);
14 tdesc_add_flag (type_with_fields, 0,
"CF");
15 tdesc_add_flag (type_with_fields, 1,
"");
16 tdesc_add_flag (type_with_fields, 2,
"PF");
17 tdesc_add_flag (type_with_fields, 4,
"AF");
18 tdesc_add_flag (type_with_fields, 6,
"ZF");
19 tdesc_add_flag (type_with_fields, 7,
"SF");
20 tdesc_add_flag (type_with_fields, 8,
"TF");
21 tdesc_add_flag (type_with_fields, 9,
"IF");
22 tdesc_add_flag (type_with_fields, 10,
"DF");
23 tdesc_add_flag (type_with_fields, 11,
"OF");
24 tdesc_add_flag (type_with_fields, 14,
"NT");
25 tdesc_add_flag (type_with_fields, 16,
"RF");
26 tdesc_add_flag (type_with_fields, 17,
"VM");
27 tdesc_add_flag (type_with_fields, 18,
"AC");
28 tdesc_add_flag (type_with_fields, 19,
"VIF");
29 tdesc_add_flag (type_with_fields, 20,
"VIP");
30 tdesc_add_flag (type_with_fields, 21,
"ID");
32 tdesc_create_reg (feature,
"rax",
regnum++, 1, NULL, 64,
"int64");
33 tdesc_create_reg (feature,
"rbx",
regnum++, 1, NULL, 64,
"int64");
34 tdesc_create_reg (feature,
"rcx",
regnum++, 1, NULL, 64,
"int64");
35 tdesc_create_reg (feature,
"rdx",
regnum++, 1, NULL, 64,
"int64");
36 tdesc_create_reg (feature,
"rsi",
regnum++, 1, NULL, 64,
"int64");
37 tdesc_create_reg (feature,
"rdi",
regnum++, 1, NULL, 64,
"int64");
38 tdesc_create_reg (feature,
"rbp",
regnum++, 1, NULL, 64,
"int64");
39 tdesc_create_reg (feature,
"rsp",
regnum++, 1, NULL, 64,
"int64");
40 tdesc_create_reg (feature,
"r8",
regnum++, 1, NULL, 64,
"int64");
41 tdesc_create_reg (feature,
"r9",
regnum++, 1, NULL, 64,
"int64");
42 tdesc_create_reg (feature,
"r10",
regnum++, 1, NULL, 64,
"int64");
43 tdesc_create_reg (feature,
"r11",
regnum++, 1, NULL, 64,
"int64");
44 tdesc_create_reg (feature,
"r12",
regnum++, 1, NULL, 64,
"int64");
45 tdesc_create_reg (feature,
"r13",
regnum++, 1, NULL, 64,
"int64");
46 tdesc_create_reg (feature,
"r14",
regnum++, 1, NULL, 64,
"int64");
47 tdesc_create_reg (feature,
"r15",
regnum++, 1, NULL, 64,
"int64");
48 tdesc_create_reg (feature,
"rip",
regnum++, 1, NULL, 64,
"uint64");
49 tdesc_create_reg (feature,
"eflags",
regnum++, 1, NULL, 32,
"i386_eflags");
50 tdesc_create_reg (feature,
"cs",
regnum++, 1, NULL, 32,
"int32");
51 tdesc_create_reg (feature,
"ss",
regnum++, 1, NULL, 32,
"int32");
52 tdesc_create_reg (feature,
"ds",
regnum++, 1, NULL, 32,
"int32");
53 tdesc_create_reg (feature,
"es",
regnum++, 1, NULL, 32,
"int32");
54 tdesc_create_reg (feature,
"fs",
regnum++, 1, NULL, 32,
"int32");
55 tdesc_create_reg (feature,
"gs",
regnum++, 1, NULL, 32,
"int32");
56 tdesc_create_reg (feature,
"st0",
regnum++, 1, NULL, 80,
"i387_ext");
57 tdesc_create_reg (feature,
"st1",
regnum++, 1, NULL, 80,
"i387_ext");
58 tdesc_create_reg (feature,
"st2",
regnum++, 1, NULL, 80,
"i387_ext");
59 tdesc_create_reg (feature,
"st3",
regnum++, 1, NULL, 80,
"i387_ext");
60 tdesc_create_reg (feature,
"st4",
regnum++, 1, NULL, 80,
"i387_ext");
61 tdesc_create_reg (feature,
"st5",
regnum++, 1, NULL, 80,
"i387_ext");
62 tdesc_create_reg (feature,
"st6",
regnum++, 1, NULL, 80,
"i387_ext");
63 tdesc_create_reg (feature,
"st7",
regnum++, 1, NULL, 80,
"i387_ext");
64 tdesc_create_reg (feature,
"fctrl",
regnum++, 1,
"float", 32,
"int");
65 tdesc_create_reg (feature,
"fstat",
regnum++, 1,
"float", 32,
"int");
66 tdesc_create_reg (feature,
"ftag",
regnum++, 1,
"float", 32,
"int");
67 tdesc_create_reg (feature,
"fiseg",
regnum++, 1,
"float", 32,
"int");
68 tdesc_create_reg (feature,
"fioff",
regnum++, 1,
"float", 32,
"int");
69 tdesc_create_reg (feature,
"foseg",
regnum++, 1,
"float", 32,
"int");
70 tdesc_create_reg (feature,
"fooff",
regnum++, 1,
"float", 32,
"int");
71 tdesc_create_reg (feature,
"fop",
regnum++, 1,
"float", 32,
"int");