summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/ChangeLog1
-rw-r--r--src/readelf.c5
2 files changed, 4 insertions, 2 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index e05aac10..26056db4 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -3,6 +3,7 @@
* objdump.c (show_relocs_x): Minor cleanups.
* readelf.c (print_cfa_program): Correct a few labels.
+ Print first DW_CFA_expression parameter as register.
2009-02-01 Ulrich Drepper <[email protected]>
diff --git a/src/readelf.c b/src/readelf.c
index d687b7fd..ccf2cb61 100644
--- a/src/readelf.c
+++ b/src/readelf.c
@@ -4335,13 +4335,14 @@ print_cfa_program (const unsigned char *readp, const unsigned char *const endp,
printf (" def_cfa_expression %" PRIu64 "\n", op1);
print_ops (dwflmod, dbg, 10, 10, ptr_size, op1, readp);
readp += op1;
- error (1,0,"need to implement BLOCK reading");
+ //error (1,0,"need to implement BLOCK reading");
break;
case DW_CFA_expression:
// XXX overflow check
get_uleb128 (op1, readp);
get_uleb128 (op2, readp); /* Length of DW_FORM_block. */
- printf (" expression %" PRIu64 "\n", op1);
+ printf (" expression r%" PRIu64 " (%s) \n",
+ op1, regname (op1));
print_ops (dwflmod, dbg, 10, 10, ptr_size, op2, readp);
readp += op2;
break;