node 108 dxref.c static int count_children (xmlNodePtr node, char *tag); node 109 dxref.c static xmlNodePtr search_sibling (xmlNodePtr node, char *tag); node 110 dxref.c static char **create_dir_table (xmlNodePtr node); node 112 dxref.c static struct file *create_file_table (xmlNodePtr node, char **dir_table, node 114 dxref.c static struct line *create_line_table (xmlNodePtr node, node 138 dxref.c static char *get_type (xmlNodePtr node); node 139 dxref.c static char *get_params (xmlNodePtr node); node 140 dxref.c static char *get_subscript (xmlNodePtr node); node 141 dxref.c static int get_comp_unit (xmlNodePtr node); node 143 dxref.c static char *get_filename_by_node (xmlNodePtr node, char *file_num); node 146 dxref.c static char *get_pathname_by_node (xmlNodePtr node, char *file_num); node 151 dxref.c static char *type_to_string (xmlNodePtr node); node 152 dxref.c static char *base_type_to_string (xmlNodePtr node); node 153 dxref.c static char *array_type_to_string (xmlNodePtr node); node 154 dxref.c static char *ptr_type_to_string (xmlNodePtr node); node 155 dxref.c static char *func_type_to_string (xmlNodePtr node); node 156 dxref.c static char *volatile_to_string (xmlNodePtr node); node 157 dxref.c static char *const_to_string (xmlNodePtr node); node 158 dxref.c static char *struct_union_to_string (xmlNodePtr node, char *which); node 159 dxref.c static char *struct_to_string (xmlNodePtr node); node 160 dxref.c static char *union_to_string (xmlNodePtr node); node 161 dxref.c static char *typedef_to_string (xmlNodePtr node); node 162 dxref.c static char *enum_to_string (xmlNodePtr node); node 163 dxref.c static char *enum_constants_to_string (xmlNodePtr node); node 164 dxref.c static char *members_to_string (xmlNodePtr node); node 166 dxref.c static void visit_all_children (xmlNodePtr node, FILE *fp); node 169 dxref.c static void output_debug_info (xmlNodePtr node, FILE *fp); node 170 dxref.c static void output_compile_unit (xmlNodePtr node, FILE *fp); node 171 dxref.c static void output_subprogram (xmlNodePtr node, FILE *fp); node 172 dxref.c static void output_lexical_block (xmlNodePtr node, FILE *fp); node 173 dxref.c static void output_variable (xmlNodePtr node, FILE *fp); node 174 dxref.c static void output_label (xmlNodePtr node, FILE *fp); node 175 dxref.c static void output_typedef (xmlNodePtr node, FILE *fp); node 176 dxref.c static void output_enum (xmlNodePtr node, FILE *fp); node 177 dxref.c static void output_enum_constants (xmlNodePtr node, FILE *fp, node 179 dxref.c static void output_struct_union (xmlNodePtr node, FILE *fp, char *which); node 180 dxref.c static void output_struct (xmlNodePtr node, FILE *fp); node 181 dxref.c static void output_union (xmlNodePtr node, FILE *fp); node 182 dxref.c static void output_members (xmlNodePtr node, FILE *fp); node 294 dxref.c count_children (xmlNodePtr node, char *tag) node 299 dxref.c for (child = node->children; child != NULL; child = child->next) { node 307 dxref.c search_sibling (xmlNodePtr node, char *tag) node 309 dxref.c while (node != NULL) { node 310 dxref.c if (node->type == XML_ELEMENT_NODE && !strcmp (node->name, tag)) node 311 dxref.c return node; node 312 dxref.c node = node->next; node 318 dxref.c create_dir_table (xmlNodePtr node) node 324 dxref.c assert (node != NULL); node 325 dxref.c assert (node->type == XML_ELEMENT_NODE); node 326 dxref.c assert (!strcmp (node->name, "include_directories")); node 328 dxref.c n_dir = count_children (node, "directory"); node 333 dxref.c for (child = node->children; child != NULL; child = child->next) { node 358 dxref.c create_file_table (xmlNodePtr node, char **dir_table, int *n_file) node 365 dxref.c *n_file = count_children (node, "file"); node 372 dxref.c for (child = node->children; child != NULL; child = child->next) { node 395 dxref.c create_line_table (xmlNodePtr node, struct file *file_table, int *n_line) node 401 dxref.c *n_line = count_children (node, "line"); node 405 dxref.c for (child = node->children; child != NULL; child = child->next) { node 439 dxref.c xmlNodePtr node = result->nodeTab [i]; node 446 dxref.c char *info_offset = xmlGetProp (node, "offset"); node 447 dxref.c char *macro_info = get_attr_value ("DW_AT_macro_info", node); node 448 dxref.c char *stmt_list = get_attr_value ("DW_AT_stmt_list", node); node 476 dxref.c assert (node != NULL); node 486 dxref.c assert (node != NULL); node 507 dxref.c xmlNodePtr node = result->nodeTab [i]; node 508 dxref.c char *number = xmlGetProp (node->parent, "number"); node 511 dxref.c abbrev_table [i].upper_bound_form = xmlGetProp (node, "type"); node 606 dxref.c context->node = from; node 623 dxref.c xmlNodePtr node; node 627 dxref.c for (node = from->children; node != NULL; node = node->next) { node 628 dxref.c if (node->type != XML_ELEMENT_NODE) continue; node 629 dxref.c if (strcmp (node->name, elem)) continue; node 630 dxref.c attr_name = xmlGetProp (node, "name"); node 638 dxref.c return xmlGetProp (node, attr); node 641 dxref.c for (child = node->children; child != NULL; child = child->next) { node 683 dxref.c get_type (xmlNodePtr node) node 688 dxref.c type_id = get_attr_value_ref ("DW_AT_type", node); node 701 dxref.c get_params (xmlNodePtr node) node 709 dxref.c assert (node->type == XML_ELEMENT_NODE); node 710 dxref.c assert (!strcmp (node->name, "tag")); node 711 dxref.c attr = xmlGetProp (node, "name"); node 718 dxref.c result = eval_xpath (xpath, node, &free_p, &n); node 748 dxref.c get_subscript (xmlNodePtr node) node 760 dxref.c "@abbrev_number", node); node 785 dxref.c for (child = node->children; child != NULL; child = child->next) { node 821 dxref.c get_comp_unit (xmlNodePtr node) node 824 dxref.c char *offset = xmlGetProp (node, "offset"); node 849 dxref.c get_filename_by_node (xmlNodePtr node, char *file_num) node 854 dxref.c int n_comp = get_comp_unit (node); node 882 dxref.c get_pathname_by_node (xmlNodePtr node, char *file_num) node 887 dxref.c int n_comp = get_comp_unit (node); node 917 dxref.c type_to_string (xmlNodePtr node) node 920 dxref.c assert (node->type == XML_ELEMENT_NODE); node 921 dxref.c assert (!strcmp (node->name, "tag")); node 923 dxref.c attr = xmlGetProp (node, "name"); node 926 dxref.c ret = array_type_to_string (node); node 928 dxref.c ret = base_type_to_string (node); node 930 dxref.c ret = ptr_type_to_string (node); node 932 dxref.c ret = func_type_to_string (node); node 934 dxref.c ret = const_to_string (node); node 936 dxref.c ret = volatile_to_string (node); node 938 dxref.c ret = struct_to_string (node); node 940 dxref.c ret = union_to_string (node); node 942 dxref.c ret = typedef_to_string (node); node 944 dxref.c ret = enum_to_string (node); node 956 dxref.c base_type_to_string (xmlNodePtr node) node 959 dxref.c char *type = get_attr_value ("DW_AT_name", node); node 970 dxref.c array_type_to_string (xmlNodePtr node) node 974 dxref.c char *id = xmlGetProp (node, "offset"); node 976 dxref.c char *type = get_type (node); node 977 dxref.c char *subscript = get_subscript (node); node 986 dxref.c ptr_type_to_string (xmlNodePtr node) node 989 dxref.c char *type = get_type (node); node 996 dxref.c func_type_to_string (xmlNodePtr node) node 999 dxref.c char *ret_type = get_type (node); node 1000 dxref.c char *params = get_params (node); node 1009 dxref.c volatile_to_string (xmlNodePtr node) node 1012 dxref.c char *type = get_type (node); node 1019 dxref.c const_to_string (xmlNodePtr node) node 1022 dxref.c char *type = get_type (node); node 1029 dxref.c struct_union_to_string (xmlNodePtr node, char *which) node 1032 dxref.c char *id = xmlGetProp (node, "offset"); node 1033 dxref.c char *name = get_attr_value ("DW_AT_name", node); node 1035 dxref.c char *members = members_to_string (node); node 1046 dxref.c struct_to_string (xmlNodePtr node) node 1048 dxref.c return struct_union_to_string (node, "struct"); node 1052 dxref.c union_to_string (xmlNodePtr node) node 1054 dxref.c return struct_union_to_string (node, "union"); node 1058 dxref.c members_to_string (xmlNodePtr node) node 1066 dxref.c result = eval_xpath (xpath, node, &free_p, &n); node 1098 dxref.c typedef_to_string (xmlNodePtr node) node 1101 dxref.c char *id = xmlGetProp (node, "offset"); node 1102 dxref.c char *name = get_attr_value ("DW_AT_name", node); node 1110 dxref.c enum_to_string (xmlNodePtr node) node 1113 dxref.c char *id = xmlGetProp (node, "offset"); node 1114 dxref.c char *name = get_attr_value ("DW_AT_name", node); node 1116 dxref.c char * enum_constants = enum_constants_to_string (node); node 1127 dxref.c enum_constants_to_string (xmlNodePtr node) node 1135 dxref.c result = eval_xpath (xpath, node, &free_p, &n); node 1164 dxref.c visit_all_children (xmlNodePtr node, FILE *fp) node 1167 dxref.c for (child = node->children; child != NULL; child = child->next) { node 1179 dxref.c xmlNodePtr node, child; node 1186 dxref.c node = result->nodeTab [0]; node 1187 dxref.c assert (node->type == XML_ELEMENT_NODE); node 1188 dxref.c assert (!strcmp (node->name, "section")); node 1194 dxref.c visit_all_children (node, fp); node 1200 dxref.c output_debug_info (xmlNodePtr node, FILE *fp) node 1203 dxref.c assert (node->type == XML_ELEMENT_NODE); node 1204 dxref.c assert (!strcmp (node->name, "tag")); node 1205 dxref.c attr = xmlGetProp (node, "name"); node 1209 dxref.c output_compile_unit (node, fp); node 1211 dxref.c output_subprogram (node, fp); node 1213 dxref.c output_lexical_block (node, fp); node 1215 dxref.c output_variable (node, fp); node 1217 dxref.c output_label (node, fp); node 1219 dxref.c output_typedef (node, fp); node 1221 dxref.c output_struct (node, fp); node 1223 dxref.c output_union (node, fp); node 1225 dxref.c output_enum (node, fp); node 1239 dxref.c visit_all_children (node, fp); node 1264 dxref.c output_compile_unit (xmlNodePtr node, FILE *fp) node 1266 dxref.c char *id = xmlGetProp (node, "offset"); node 1267 dxref.c char *filename = get_attr_value ("DW_AT_name", node); node 1268 dxref.c char *comp_dir = get_attr_value ("DW_AT_comp_dir", node); node 1269 dxref.c char *high_pc = get_attr_value ("DW_AT_high_pc", node); node 1270 dxref.c char *low_pc = get_attr_value ("DW_AT_low_pc", node); node 1271 dxref.c char *producer = get_attr_value ("DW_AT_producer", node); node 1279 dxref.c visit_all_children (node, fp); node 1290 dxref.c output_subprogram (xmlNodePtr node, FILE *fp) node 1293 dxref.c char *id = xmlGetProp (node, "offset"); node 1294 dxref.c char *funcname = get_attr_value ("DW_AT_name", node); node 1295 dxref.c char *file = get_attr_value ("DW_AT_decl_file", node); node 1296 dxref.c char *filename = get_filename_by_node (node, file); node 1297 dxref.c char *pathname = get_pathname_by_node (node, file); node 1298 dxref.c char *line = get_attr_value ("DW_AT_decl_line", node); node 1300 dxref.c char *high_pc = get_attr_value ("DW_AT_high_pc", node); node 1301 dxref.c char *low_pc = get_attr_value ("DW_AT_low_pc", node); node 1302 dxref.c char *external = get_attr_value ("DW_AT_external", node); node 1303 dxref.c char *declaration = get_attr_value ("DW_AT_declaration", node); node 1304 dxref.c char *abst_origin = get_attr_value ("DW_AT_abstract_origin", node); node 1305 dxref.c char *inlined = get_attr_desc ("DW_AT_inline", node); node 1306 dxref.c char *ret_type = get_type (node); node 1307 dxref.c char *params = get_params (node); node 1349 dxref.c visit_all_children (node, fp); node 1368 dxref.c output_lexical_block (xmlNodePtr node, FILE *fp) node 1370 dxref.c char *id = xmlGetProp (node, "offset"); node 1371 dxref.c char *high_pc = get_attr_value ("DW_AT_high_pc", node); node 1372 dxref.c char *low_pc = get_attr_value ("DW_AT_low_pc", node); node 1380 dxref.c visit_all_children (node, fp); node 1391 dxref.c output_variable (xmlNodePtr node, FILE *fp) node 1396 dxref.c char *id = xmlGetProp (node, "offset"); node 1397 dxref.c char *varname = get_attr_value ("DW_AT_name", node); node 1398 dxref.c char *file = get_attr_value ("DW_AT_decl_file", node); node 1399 dxref.c char *filename = get_filename_by_node (node, file); node 1400 dxref.c char *pathname = get_pathname_by_node (node, file); node 1401 dxref.c char *line = get_attr_value ("DW_AT_decl_line", node); node 1403 dxref.c char *external = get_attr_value ("DW_AT_external", node); node 1404 dxref.c char *type = get_type (node); node 1405 dxref.c char *location = get_attr_desc ("DW_AT_location", node); node 1406 dxref.c char *declaration = get_attr_value ("DW_AT_declaration", node); node 1454 dxref.c output_label (xmlNodePtr node, FILE *fp) node 1456 dxref.c char *id = xmlGetProp (node, "offset"); node 1457 dxref.c char *labelname = get_attr_value ("DW_AT_name", node); node 1458 dxref.c char *file = get_attr_value ("DW_AT_decl_file", node); node 1459 dxref.c char *filename = get_filename_by_node (node, file); node 1460 dxref.c char *pathname = get_pathname_by_node (node, file); node 1461 dxref.c char *line = get_attr_value ("DW_AT_decl_line", node); node 1462 dxref.c char *low_pc = get_attr_value ("DW_AT_low_pc", node); node 1481 dxref.c output_typedef (xmlNodePtr node, FILE *fp) node 1484 dxref.c char *id = xmlGetProp (node, "offset"); node 1485 dxref.c char *typename = get_attr_value ("DW_AT_name", node); node 1486 dxref.c char *file = get_attr_value ("DW_AT_decl_file", node); node 1487 dxref.c char *filename = get_filename_by_node (node, file); node 1488 dxref.c char *pathname = get_pathname_by_node (node, file); node 1489 dxref.c char *line = get_attr_value ("DW_AT_decl_line", node); node 1490 dxref.c char *type = get_type (node); node 1511 dxref.c output_enum (xmlNodePtr node, FILE *fp) node 1513 dxref.c char *id = xmlGetProp (node, "offset"); node 1514 dxref.c char *enumname = get_attr_value ("DW_AT_name", node); node 1515 dxref.c char *file = get_attr_value ("DW_AT_decl_file", node); node 1516 dxref.c char *filename = get_filename_by_node (node, file); node 1517 dxref.c char *pathname = get_pathname_by_node (node, file); node 1518 dxref.c char *line = get_attr_value ("DW_AT_decl_line", node); node 1525 dxref.c output_enum_constants (node, fp, pathname, line2); node 1535 dxref.c output_enum_constants (xmlNodePtr node, FILE *fp, char *pathname, char *line) node 1542 dxref.c result = eval_xpath (xpath, node, &free_p, &n); node 1570 dxref.c output_struct_union (xmlNodePtr node, FILE *fp, char *which) node 1572 dxref.c char *id = xmlGetProp (node, "offset"); node 1573 dxref.c char *tagname = get_attr_value ("DW_AT_name", node); node 1574 dxref.c char *file = get_attr_value ("DW_AT_decl_file", node); node 1575 dxref.c char *filename = get_filename_by_node (node, file); node 1576 dxref.c char *pathname = get_pathname_by_node (node, file); node 1577 dxref.c char *line = get_attr_value ("DW_AT_decl_line", node); node 1579 dxref.c char *size = get_attr_value ("DW_AT_byte_size", node); node 1585 dxref.c output_members (node, fp); node 1596 dxref.c output_struct (xmlNodePtr node, FILE *fp) node 1598 dxref.c output_struct_union (node, fp, "struct"); node 1602 dxref.c output_union (xmlNodePtr node, FILE *fp) node 1604 dxref.c output_struct_union (node, fp, "union"); node 1608 dxref.c output_members (xmlNodePtr node, FILE *fp) node 1615 dxref.c result = eval_xpath (xpath, node, &free_p, &n); node 1689 dxref.c xmlNodePtr node = result->nodeTab [i]; node 1690 dxref.c char *id = xmlGetProp (node, "offset"); node 1691 dxref.c char *tagname = get_attr_value ("DW_AT_name", node); node 1692 dxref.c char *file = get_attr_value ("DW_AT_decl_file", node); node 1693 dxref.c char *filename = get_filename_by_node (node, file); node 1694 dxref.c char *pathname = get_pathname_by_node (node, file); node 1695 dxref.c char *line = get_attr_value ("DW_AT_decl_line", node); node 1740 dxref.c xmlNodePtr node = result->nodeTab [i]; node 1741 dxref.c char *id = xmlGetProp (node, "offset"); node 1742 dxref.c char *tagname = get_attr_value ("DW_AT_name", node); node 1743 dxref.c char *file = get_attr_value ("DW_AT_decl_file", node); node 1744 dxref.c char *filename = get_filename_by_node (node, file); node 1745 dxref.c char *pathname = get_pathname_by_node (node, file); node 1746 dxref.c char *line = get_attr_value ("DW_AT_decl_line", node); node 1790 dxref.c xmlNodePtr node = result->nodeTab [i]; node 1791 dxref.c char *id = xmlGetProp (node, "offset"); node 1792 dxref.c char *name = get_attr_value ("DW_AT_name", node); node 1793 dxref.c char *file = get_attr_value ("DW_AT_decl_file", node); node 1794 dxref.c char *filename = get_filename_by_node (node, file); node 1795 dxref.c char *pathname = get_pathname_by_node (node, file); node 1796 dxref.c char *line = get_attr_value ("DW_AT_decl_line", node); node 1840 dxref.c xmlNodePtr node = result->nodeTab [i]; node 1841 dxref.c char *id = xmlGetProp (node, "offset"); node 1842 dxref.c char *name = get_attr_value ("DW_AT_name", node); node 1843 dxref.c char *file = get_attr_value ("DW_AT_decl_file", node); node 1844 dxref.c char *filename = get_filename_by_node (node, file); node 1845 dxref.c char *pathname = get_pathname_by_node (node, file); node 1846 dxref.c char *line = get_attr_value ("DW_AT_decl_line", node); node 1890 dxref.c xmlNodePtr node = result->nodeTab [i]; node 1891 dxref.c char *id = xmlGetProp (node, "offset"); node 1892 dxref.c char *name = get_attr_value ("DW_AT_name", node); node 1893 dxref.c char *file = get_attr_value ("DW_AT_decl_file", node->parent); node 1894 dxref.c char *filename = get_filename_by_node (node, file); node 1895 dxref.c char *pathname = get_pathname_by_node (node, file); node 1896 dxref.c char *line = get_attr_value ("DW_AT_decl_line", node->parent); node 1940 dxref.c xmlNodePtr node = result->nodeTab [i]; node 1941 dxref.c char *id = xmlGetProp (node, "offset"); node 1942 dxref.c char *name = get_attr_value ("DW_AT_name", node); node 1943 dxref.c char *file = get_attr_value ("DW_AT_decl_file", node); node 1944 dxref.c char *filename = get_filename_by_node (node, file); node 1945 dxref.c char *pathname = get_pathname_by_node (node, file); node 1946 dxref.c char *line = get_attr_value ("DW_AT_decl_line", node); node 1990 dxref.c xmlNodePtr node = result->nodeTab [i]; node 1991 dxref.c char *id = xmlGetProp (node, "offset"); node 1992 dxref.c char *name = get_attr_value ("DW_AT_name", node); node 1993 dxref.c char *file = get_attr_value ("DW_AT_decl_file", node); node 1994 dxref.c char *filename = get_filename_by_node (node, file); node 1995 dxref.c char *pathname = get_pathname_by_node (node, file); node 1996 dxref.c char *line = get_attr_value ("DW_AT_decl_line", node); node 1998 dxref.c char *ret_type = get_type (node); node 1999 dxref.c char *params = get_params (node); node 2000 dxref.c char *external = get_attr_value ("DW_AT_external", node); node 2061 dxref.c xmlNodePtr node = result->nodeTab [i]; node 2062 dxref.c char *id = xmlGetProp (node, "offset"); node 2063 dxref.c char *name = get_attr_value ("DW_AT_name", node); node 2064 dxref.c char *file = get_attr_value ("DW_AT_decl_file", node); node 2065 dxref.c char *filename = get_filename_by_node (node, file); node 2066 dxref.c char *pathname = get_pathname_by_node (node, file); node 2067 dxref.c char *line = get_attr_value ("DW_AT_decl_line", node); node 2069 dxref.c char *type = get_type (node); node 2070 dxref.c char *external = get_attr_value ("DW_AT_external", node); node 2123 dxref.c xmlNodePtr node = result->nodeTab [i]; node 2124 dxref.c char *id = xmlGetProp (node, "offset"); node 2125 dxref.c char *name = get_attr_value ("DW_AT_name", node); node 2182 dxref.c xmlNodePtr node = result->nodeTab [i]; node 2184 dxref.c if (node->type != XML_ELEMENT_NODE) continue; node 2186 dxref.c if (!strcmp (node->name, "start_file")) { node 2187 dxref.c char *line = xmlGetProp (node, "line"); node 2188 dxref.c char *file_num = xmlGetProp (node, "file_index"); node 2196 dxref.c char *offset = xmlGetProp (node, "offset"); node 2217 dxref.c node = result->nodeTab [i]; node 2218 dxref.c if (strcmp (node->name, "start_file")) node 2220 dxref.c line = xmlGetProp (node, "line"); node 2238 dxref.c node = attr->parent; node 2282 dxref.c } else if (!strcmp (node->name, "end_file")) { node 2290 dxref.c } else if (!strcmp (node->name, "define_func") node 2291 dxref.c || !strcmp (node->name, "define_normal")) { node 2293 dxref.c char *line = xmlGetProp (node, "line"); node 2295 dxref.c char *name = xmlGetProp (node, "name"); node 2300 dxref.c char *body = xmlGetProp (node, "body"); node 2301 dxref.c char *signature = xmlGetProp (node, "signature"); node 2322 dxref.c } else if (!strcmp (node->name, "undef")) { node 2324 dxref.c char *line = xmlGetProp (node, "line"); node 2326 dxref.c char *name = xmlGetProp (node, "name");