1 /// @file xed-error-enum.c
2 
3 // This file was automatically generated.
4 // Do not edit this file.
5 
6 #include <string.h>
7 #include <assert.h>
8 #include "xed-error-enum.h"
9 
10 typedef struct {
11     const char* name;
12     xed_error_enum_t value;
13 } name_table_xed_error_enum_t;
14 static const name_table_xed_error_enum_t name_array_xed_error_enum_t[] = {
15 {"NONE", XED_ERROR_NONE},
16 {"BUFFER_TOO_SHORT", XED_ERROR_BUFFER_TOO_SHORT},
17 {"GENERAL_ERROR", XED_ERROR_GENERAL_ERROR},
18 {"INVALID_FOR_CHIP", XED_ERROR_INVALID_FOR_CHIP},
19 {"BAD_REGISTER", XED_ERROR_BAD_REGISTER},
20 {"BAD_LOCK_PREFIX", XED_ERROR_BAD_LOCK_PREFIX},
21 {"BAD_REP_PREFIX", XED_ERROR_BAD_REP_PREFIX},
22 {"BAD_LEGACY_PREFIX", XED_ERROR_BAD_LEGACY_PREFIX},
23 {"BAD_REX_PREFIX", XED_ERROR_BAD_REX_PREFIX},
24 {"BAD_EVEX_UBIT", XED_ERROR_BAD_EVEX_UBIT},
25 {"BAD_MAP", XED_ERROR_BAD_MAP},
26 {"BAD_EVEX_V_PRIME", XED_ERROR_BAD_EVEX_V_PRIME},
27 {"BAD_EVEX_Z_NO_MASKING", XED_ERROR_BAD_EVEX_Z_NO_MASKING},
28 {"NO_OUTPUT_POINTER", XED_ERROR_NO_OUTPUT_POINTER},
29 {"NO_AGEN_CALL_BACK_REGISTERED", XED_ERROR_NO_AGEN_CALL_BACK_REGISTERED},
30 {"BAD_MEMOP_INDEX", XED_ERROR_BAD_MEMOP_INDEX},
31 {"CALLBACK_PROBLEM", XED_ERROR_CALLBACK_PROBLEM},
32 {"GATHER_REGS", XED_ERROR_GATHER_REGS},
33 {"INSTR_TOO_LONG", XED_ERROR_INSTR_TOO_LONG},
34 {"INVALID_MODE", XED_ERROR_INVALID_MODE},
35 {"BAD_EVEX_LL", XED_ERROR_BAD_EVEX_LL},
36 {"LAST", XED_ERROR_LAST},
37 {0, XED_ERROR_LAST},
38 };
39 
40 
str2xed_error_enum_t(const char * s)41 xed_error_enum_t str2xed_error_enum_t(const char* s)
42 {
43    const name_table_xed_error_enum_t* p = name_array_xed_error_enum_t;
44    while( p->name ) {
45      if (strcmp(p->name,s) == 0) {
46       return p->value;
47      }
48      p++;
49    }
50 
51 
52    return XED_ERROR_LAST;
53 }
54 
55 
xed_error_enum_t2str(const xed_error_enum_t p)56 const char* xed_error_enum_t2str(const xed_error_enum_t p)
57 {
58    xed_error_enum_t type_idx = p;
59    if ( p > XED_ERROR_LAST) type_idx = XED_ERROR_LAST;
60    return name_array_xed_error_enum_t[type_idx].name;
61 }
62 
xed_error_enum_t_last(void)63 xed_error_enum_t xed_error_enum_t_last(void) {
64     return XED_ERROR_LAST;
65 }
66 
67 /*
68 
69 Here is a skeleton switch statement embedded in a comment
70 
71 
72   switch(p) {
73   case XED_ERROR_NONE:
74   case XED_ERROR_BUFFER_TOO_SHORT:
75   case XED_ERROR_GENERAL_ERROR:
76   case XED_ERROR_INVALID_FOR_CHIP:
77   case XED_ERROR_BAD_REGISTER:
78   case XED_ERROR_BAD_LOCK_PREFIX:
79   case XED_ERROR_BAD_REP_PREFIX:
80   case XED_ERROR_BAD_LEGACY_PREFIX:
81   case XED_ERROR_BAD_REX_PREFIX:
82   case XED_ERROR_BAD_EVEX_UBIT:
83   case XED_ERROR_BAD_MAP:
84   case XED_ERROR_BAD_EVEX_V_PRIME:
85   case XED_ERROR_BAD_EVEX_Z_NO_MASKING:
86   case XED_ERROR_NO_OUTPUT_POINTER:
87   case XED_ERROR_NO_AGEN_CALL_BACK_REGISTERED:
88   case XED_ERROR_BAD_MEMOP_INDEX:
89   case XED_ERROR_CALLBACK_PROBLEM:
90   case XED_ERROR_GATHER_REGS:
91   case XED_ERROR_INSTR_TOO_LONG:
92   case XED_ERROR_INVALID_MODE:
93   case XED_ERROR_BAD_EVEX_LL:
94   case XED_ERROR_LAST:
95   default:
96      xed_assert(0);
97   }
98 */
99