X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=win32%2FfirmEvaluator%2Ffirm.c;h=6494a54a0c7afd029e1ff81071746c82a2e61efa;hb=b3b65d5e83b23c0d6c748c6caa4863803c58cc87;hp=8b93436642e053c9a4fc0d205f0c349b9e7b8e2f;hpb=1a26f4853c07d1ecd68a097409dd602edfe29eff;p=libfirm diff --git a/win32/firmEvaluator/firm.c b/win32/firmEvaluator/firm.c index 8b9343664..6494a54a0 100644 --- a/win32/firmEvaluator/firm.c +++ b/win32/firmEvaluator/firm.c @@ -17,7 +17,7 @@ #include "array_t.h" #define NDEBUG #else -#include "array.h" +#include "array_t.h" #endif #include "entity_t.h" @@ -235,6 +235,20 @@ static HRESULT format_entity(DEBUGHELPER *pHelper, int nBase, const void *addr, return S_OK; } /* format_entity */ +/** + * format an ir_mode + */ +static HRESULT format_mode(DEBUGHELPER *pHelper, const void *addr, char *pResult, size_t max) +{ + ir_mode mode; + + if (copy_from_debuggee(addr, pHelper, &mode, sizeof(mode)) != S_OK) + return E_FAIL; + if (format_ident(pHelper, mode.name, pResult, max) != S_OK) + return E_FAIL; + return S_OK; +} /* format_mode */ + /** * format a type */ @@ -254,8 +268,14 @@ static HRESULT format_type(DEBUGHELPER *pHelper, int nBase, const void *addr, ch _tcsncat(pResult, " ", max); } - if (format_ident(pHelper, tp.name, name, sizeof(name)) != S_OK) - return E_FAIL; + name[0] = '\0'; + if (tp.name) { + if (format_ident(pHelper, tp.name, name, sizeof(name)) != S_OK) + return E_FAIL; + } else { + if (format_mode(pHelper, tp.mode, name, sizeof(name)) != S_OK) + return E_FAIL; + } _tcsncat(pResult, name, max); switch (nBase) { @@ -340,20 +360,6 @@ HRESULT format_op(DEBUGHELPER *pHelper, const void *addr, char *pResult, size_t return S_OK; } /* format_op */ -/** - * format an ir_mode - */ -static HRESULT format_mode(DEBUGHELPER *pHelper, const void *addr, char *pResult, size_t max) -{ - ir_mode mode; - - if (copy_from_debuggee(addr, pHelper, &mode, sizeof(mode)) != S_OK) - return E_FAIL; - if (format_ident(pHelper, mode.name, pResult, max) != S_OK) - return E_FAIL; - return S_OK; -} /* format_mode */ - /** get a temporary string */ #define get_string(str) \ do { \ @@ -501,7 +507,7 @@ static HRESULT format_node(DEBUGHELPER *pHelper, int nBase, const void *addr, ch /* show show node attributes */ switch (op.code) { case iro_Const: - if (format_tarval(pHelper, nBase, n.attr.con.tv, name, sizeof(name)) != S_OK) { + if (format_tarval(pHelper, nBase, n.attr.con.tarval, name, sizeof(name)) != S_OK) { _tcsncat(pResult, "", max); } else { @@ -531,12 +537,6 @@ static HRESULT format_node(DEBUGHELPER *pHelper, int nBase, const void *addr, ch return E_FAIL; _tcsncat(pResult, name, max); break; - case symconst_addr_name: - _tcsncat(pResult, "NAME:", max); - if (format_ident(pHelper, n.attr.symc.sym.ident_p, name, sizeof(name)) != S_OK) - return E_FAIL; - _tcsncat(pResult, name, max); - break; case symconst_addr_ent: _tcsncat(pResult, "ENT:", max); if (format_entity(pHelper, nBase, n.attr.symc.sym.entity_p, name, sizeof(name), 0) != S_OK) @@ -842,7 +842,8 @@ struct set { * Find the longest chain of a pset */ static HRESULT find_longest_pset_chain(DEBUGHELPER *pHelper, pset *set, - int *chains, int *lenght, size_t *size) { + int *chains, int *lenght, size_t *size) +{ unsigned i, j; pset_Segment *seg, *curr; pset_Element elem; @@ -882,7 +883,8 @@ static HRESULT find_longest_pset_chain(DEBUGHELPER *pHelper, pset *set, * Find the longest chain of a set */ static HRESULT find_longest_set_chain(DEBUGHELPER *pHelper, set *set, - int *chains, int *lenght, size_t *size) { + int *chains, int *lenght, size_t *size) +{ unsigned i, j; set_Segment *seg, *curr; set_Element elem; @@ -1051,14 +1053,14 @@ HRESULT format_pdeq(DEBUGHELPER *pHelper, int nBase, const void *address, char * /** show the first 2 units */ static HRESULT fill_bits(DEBUGHELPER *pHelper, bitset_t *bs, char *pResult) { - bitset_pos_t i, units = bs->units; + unsigned i, units = bs->size; int l = 0, o = 0, breaked = 0; unsigned j; for (i = 0; i < units; ++i) { - bitset_unit_t data; + unsigned data; - if (copy_from_debuggee((void *)(BS_DATA(bs)[i]), pHelper, &data, sizeof(data)) != S_OK) + if (copy_from_debuggee((void *)(&bs->data[i]), pHelper, &data, sizeof(data)) != S_OK) return E_FAIL; for (j = 0; j < 32; ++j) { @@ -1089,7 +1091,7 @@ HRESULT format_bitset(DEBUGHELPER *pHelper, int nBase, const void *address, char { bitset_t bs; char name[256]; - bitset_pos_t l; + unsigned l; if (copy_from_debuggee(address, pHelper, &bs, sizeof(bs)) != S_OK) return E_FAIL;