diff options
| author | Petr Machata <[email protected]> | 2009-09-09 15:40:23 +0200 |
|---|---|---|
| committer | Petr Machata <[email protected]> | 2010-08-18 14:55:09 +0200 |
| commit | 8283a0db67d305b19ffec0083db5884a03d0cfd7 (patch) | |
| tree | fd0956f4fa0f32104c661f84b755bb4ed6346e22 /src/dwarfstrings.c | |
| parent | 4b3da298d258c9674f041b02f62f3e0149595a5d (diff) | |
dwarflint: Used wrong formatter for DW_LNS_ opcodes
* add the right formatter to dwarfstrings.[ch]
Diffstat (limited to 'src/dwarfstrings.c')
| -rw-r--r-- | src/dwarfstrings.c | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/dwarfstrings.c b/src/dwarfstrings.c index fdb3ede4..bfccece8 100644 --- a/src/dwarfstrings.c +++ b/src/dwarfstrings.c @@ -630,3 +630,28 @@ dwarf_locexpr_opcode_string (unsigned int code) return ret; } + + +const char * +dwarf_line_standard_opcode_string (unsigned int code) +{ + static const char *const known[] = + { +#define ONE_KNOWN_DW_LNS(NAME, CODE) [CODE] = #NAME, + ALL_KNOWN_DW_LNS +#undef ONE_KNOWN_DW_LNS + }; + + const char *ret = NULL; + if (likely (code < sizeof (known) / sizeof (known[0]))) + ret = known[code]; + + if (ret == NULL) + { + static char buf[40]; + snprintf (buf, sizeof buf, gettext ("unknown opcode %x"), code); + ret = buf; + } + + return ret; +} |
