X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/00e73cde9763ace0823328ea4f8811b966c1ff37..95ec32db7b55e5ae11efc6dbd2230abbbcc18fc8:/testsuite/mc/dwarf_expression.c diff --git a/testsuite/mc/dwarf_expression.c b/testsuite/mc/dwarf_expression.c index 719c73b454..8fa09c5f2e 100644 --- a/testsuite/mc/dwarf_expression.c +++ b/testsuite/mc/dwarf_expression.c @@ -8,13 +8,14 @@ #include "../src/mc/mc_private.h" +static uintptr_t eval_binary_operation(mc_expression_state_t state, int op, uintptr_t a, uintptr_t b) { state->stack_size = 0; Dwarf_Op ops[15]; - ops[0].atom = DW_OP_addr; + ops[0].atom = DW_OP_const8u; ops[0].number = a; - ops[1].atom = DW_OP_addr; + ops[1].atom = DW_OP_const8u; ops[1].number = b; ops[2].atom = op; @@ -23,6 +24,7 @@ uintptr_t eval_binary_operation(mc_expression_state_t state, int op, uintptr_t a return state->stack[state->stack_size - 1]; } +static void basic_test(mc_expression_state_t state) { Dwarf_Op ops[60]; @@ -37,7 +39,7 @@ void basic_test(mc_expression_state_t state) { assert(state->stack_size==1); assert(state->stack[state->stack_size-1]==21); - ops[0].atom = DW_OP_addr; + ops[0].atom = DW_OP_const8u; ops[0].number = a; assert(mc_dwarf_execute_expression(1, ops, state) == MC_EXPRESSION_OK); assert(state->stack_size==2); @@ -56,7 +58,7 @@ void basic_test(mc_expression_state_t state) { assert(state->stack[state->stack_size-1]== a + 21); state->stack_size = 0; - ops[0].atom = DW_OP_addr; + ops[0].atom = DW_OP_const8u; ops[0].number = a; ops[1].atom = DW_OP_dup; ops[2].atom = DW_OP_plus; @@ -65,9 +67,9 @@ void basic_test(mc_expression_state_t state) { assert(state->stack[state->stack_size-1]== a + a); state->stack_size = 0; - ops[0].atom = DW_OP_addr; + ops[0].atom = DW_OP_const8u; ops[0].number = a; - ops[1].atom = DW_OP_addr; + ops[1].atom = DW_OP_const8u; ops[1].number = b; ops[2].atom = DW_OP_over; assert(mc_dwarf_execute_expression(3, ops, state) == MC_EXPRESSION_OK); @@ -77,9 +79,9 @@ void basic_test(mc_expression_state_t state) { assert(state->stack[state->stack_size-3]== a); state->stack_size = 0; - ops[0].atom = DW_OP_addr; + ops[0].atom = DW_OP_const8u; ops[0].number = a; - ops[1].atom = DW_OP_addr; + ops[1].atom = DW_OP_const8u; ops[1].number = b; ops[2].atom = DW_OP_swap; assert(mc_dwarf_execute_expression(3, ops, state) == MC_EXPRESSION_OK); @@ -88,12 +90,13 @@ void basic_test(mc_expression_state_t state) { assert(state->stack[state->stack_size-2]== b); } -int test_deref(mc_expression_state_t state) { +static +void test_deref(mc_expression_state_t state) { uintptr_t foo = 42; Dwarf_Op ops[60]; - ops[0].atom = DW_OP_addr; - ops[0].number = (Dwarf_Word) &foo; + ops[0].atom = DW_OP_const8u; + ops[0].number = (uintptr_t) &foo; ops[1].atom = DW_OP_deref; state->stack_size = 0;