diff options
author | Dave Brolley <brolley@redhat.com> | 2010-01-21 11:46:30 -0500 |
---|---|---|
committer | Dave Brolley <brolley@redhat.com> | 2010-01-21 11:46:30 -0500 |
commit | cabde31c2b2e13d253f2ba70921d6f01a6278af1 (patch) | |
tree | 3bbcf9b696e4ab7405b67cf79d01c406d87a23eb /loc2c.c | |
parent | c32d53de58e44c31893fdc465d04fffdd98bc121 (diff) | |
parent | 4b5627b1afbdfb3f41d1d322e7fc0f8ebe69abe5 (diff) | |
download | systemtap-steved-cabde31c2b2e13d253f2ba70921d6f01a6278af1.tar.gz systemtap-steved-cabde31c2b2e13d253f2ba70921d6f01a6278af1.tar.xz systemtap-steved-cabde31c2b2e13d253f2ba70921d6f01a6278af1.zip |
Merge branch 'master' of ssh://sources.redhat.com/git/systemtap
Diffstat (limited to 'loc2c.c')
-rw-r--r-- | loc2c.c | 15 |
1 files changed, 12 insertions, 3 deletions
@@ -479,7 +479,6 @@ translate (struct obstack *pool, int indent, Dwarf_Addr addrbias, UNOP (abs, op_abs); BINOP (and, &); - BINOP (div, /); BINOP (minus, -); BINOP (mod, %); BINOP (mul, *); @@ -488,7 +487,7 @@ translate (struct obstack *pool, int indent, Dwarf_Addr addrbias, BINOP (or, |); BINOP (plus, +); BINOP (shl, <<); - BINOP (shra, >>); + BINOP (shr, >>); BINOP (xor, ^); /* Comparisons are binary operators too. */ @@ -502,7 +501,7 @@ translate (struct obstack *pool, int indent, Dwarf_Addr addrbias, #undef UNOP #undef BINOP - case DW_OP_shr: + case DW_OP_shra: { POP (b); POP (a); @@ -512,6 +511,16 @@ translate (struct obstack *pool, int indent, Dwarf_Addr addrbias, break; } + case DW_OP_div: + { + POP (b); + POP (a); + push ("(%s) " STACKFMT " / (%s)" STACKFMT, + stack_slot_type (loc, true), a, + stack_slot_type (loc, true), b); + break; + } + case DW_OP_plus_uconst: { POP (x); |