27 execution_RESET_NEXT_CALL_ID * execution_NEW_NEXT_CALL_ID);
28 const auto execution_PROPAGATE_CALL_ID = (
FF(1) - execution_RESET_OR_NEW_NEXT_CALL_ID);
32 auto tmp = execution_RESET_NEXT_CALL_ID * (in.get(C::execution_internal_call_id_shift) -
FF(1));
33 tmp *= scaling_factor;
34 std::get<0>(evals) +=
typename Accumulator::View(tmp);
38 auto tmp = in.get(C::execution_sel_execute_internal_call) *
39 (in.get(C::execution_internal_call_id_shift) - in.get(C::execution_next_internal_call_id));
40 tmp *= scaling_factor;
41 std::get<1>(evals) +=
typename Accumulator::View(tmp);
45 auto tmp = in.get(C::execution_sel_execute_internal_return) *
46 (in.get(C::execution_internal_call_id_shift) - in.get(C::execution_internal_call_return_id));
47 tmp *= scaling_factor;
48 std::get<2>(evals) +=
typename Accumulator::View(tmp);
52 auto tmp = execution_NOT_LAST_EXEC * execution_PROPAGATE_CALL_ID *
53 (in.get(C::execution_internal_call_id_shift) - in.get(C::execution_internal_call_id));
54 tmp *= scaling_factor;
55 std::get<3>(evals) +=
typename Accumulator::View(tmp);
59 auto tmp = execution_RESET_NEXT_CALL_ID * in.get(C::execution_internal_call_return_id_shift);
60 tmp *= scaling_factor;
61 std::get<4>(evals) +=
typename Accumulator::View(tmp);
65 auto tmp = in.get(C::execution_sel_execute_internal_call) *
66 (in.get(C::execution_internal_call_return_id_shift) - in.get(C::execution_internal_call_id));
67 tmp *= scaling_factor;
68 std::get<5>(evals) +=
typename Accumulator::View(tmp);
72 auto tmp = execution_NOT_LAST_EXEC * execution_PROPAGATE_CALL_ID *
73 (in.get(C::execution_internal_call_return_id_shift) - in.get(C::execution_internal_call_return_id));
74 tmp *= scaling_factor;
75 std::get<6>(evals) +=
typename Accumulator::View(tmp);
79 auto tmp = execution_RESET_NEXT_CALL_ID * (in.get(C::execution_next_internal_call_id_shift) -
FF(2));
80 tmp *= scaling_factor;
81 std::get<7>(evals) +=
typename Accumulator::View(tmp);
85 auto tmp = execution_NOT_LAST_EXEC * (
FF(1) - execution_RESET_OR_NEW_NEXT_CALL_ID) *
86 (in.get(C::execution_next_internal_call_id_shift) -
87 (in.get(C::execution_next_internal_call_id) + in.get(C::execution_sel_execute_internal_call)));
88 tmp *= scaling_factor;
89 std::get<8>(evals) +=
typename Accumulator::View(tmp);
94 in.get(C::execution_sel_execute_internal_return) *
95 ((in.get(C::execution_internal_call_return_id) *
96 (in.get(C::execution_sel_opcode_error) * (
FF(1) - in.get(C::execution_internal_call_return_id_inv)) +
97 in.get(C::execution_internal_call_return_id_inv)) -
99 in.get(C::execution_sel_opcode_error));
100 tmp *= scaling_factor;
101 std::get<9>(evals) +=
typename Accumulator::View(tmp);