|
|
|
@ -516,7 +516,9 @@ class Instruction: |
|
|
|
|
) |
|
|
|
|
else: |
|
|
|
|
|
|
|
|
|
state.stack.append(pow(base.value, exponent.value, 2 ** 256)) |
|
|
|
|
state.stack.append( |
|
|
|
|
symbol_factory.BitVecVal(pow(base.value, exponent.value, 2 ** 256), 256) |
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
return [global_state] |
|
|
|
|
|
|
|
|
@ -1678,7 +1680,7 @@ class Instruction: |
|
|
|
|
environment = global_state.environment |
|
|
|
|
|
|
|
|
|
try: |
|
|
|
|
callee_address, callee_account, call_data, value, call_data_type, gas, memory_out_offset, memory_out_size = get_call_parameters( |
|
|
|
|
callee_address, callee_account, call_data, value, gas, memory_out_offset, memory_out_size = get_call_parameters( |
|
|
|
|
global_state, self.dynamic_loader, True |
|
|
|
|
) |
|
|
|
|
except ValueError as e: |
|
|
|
@ -1712,7 +1714,6 @@ class Instruction: |
|
|
|
|
), |
|
|
|
|
callee_account=callee_account, |
|
|
|
|
call_data=call_data, |
|
|
|
|
call_data_type=call_data_type, |
|
|
|
|
call_value=value, |
|
|
|
|
) |
|
|
|
|
raise TransactionStartSignal(transaction, self.op_code) |
|
|
|
@ -1795,7 +1796,7 @@ class Instruction: |
|
|
|
|
environment = global_state.environment |
|
|
|
|
|
|
|
|
|
try: |
|
|
|
|
callee_address, callee_account, call_data, value, call_data_type, gas, _, _ = get_call_parameters( |
|
|
|
|
callee_address, callee_account, call_data, value, gas, _, _ = get_call_parameters( |
|
|
|
|
global_state, self.dynamic_loader, True |
|
|
|
|
) |
|
|
|
|
except ValueError as e: |
|
|
|
@ -1818,7 +1819,6 @@ class Instruction: |
|
|
|
|
caller=environment.address, |
|
|
|
|
callee_account=environment.active_account, |
|
|
|
|
call_data=call_data, |
|
|
|
|
call_data_type=call_data_type, |
|
|
|
|
call_value=value, |
|
|
|
|
) |
|
|
|
|
raise TransactionStartSignal(transaction, self.op_code) |
|
|
|
@ -1833,7 +1833,7 @@ class Instruction: |
|
|
|
|
instr = global_state.get_current_instruction() |
|
|
|
|
|
|
|
|
|
try: |
|
|
|
|
callee_address, _, _, value, _, _, memory_out_offset, memory_out_size = get_call_parameters( |
|
|
|
|
callee_address, _, _, value, _, memory_out_offset, memory_out_size = get_call_parameters( |
|
|
|
|
global_state, self.dynamic_loader, True |
|
|
|
|
) |
|
|
|
|
except ValueError as e: |
|
|
|
@ -1899,7 +1899,7 @@ class Instruction: |
|
|
|
|
environment = global_state.environment |
|
|
|
|
|
|
|
|
|
try: |
|
|
|
|
callee_address, callee_account, call_data, value, call_data_type, gas, _, _ = get_call_parameters( |
|
|
|
|
callee_address, callee_account, call_data, value, gas, _, _ = get_call_parameters( |
|
|
|
|
global_state, self.dynamic_loader |
|
|
|
|
) |
|
|
|
|
except ValueError as e: |
|
|
|
@ -1922,7 +1922,6 @@ class Instruction: |
|
|
|
|
caller=environment.sender, |
|
|
|
|
callee_account=environment.active_account, |
|
|
|
|
call_data=call_data, |
|
|
|
|
call_data_type=call_data_type, |
|
|
|
|
call_value=environment.callvalue, |
|
|
|
|
) |
|
|
|
|
raise TransactionStartSignal(transaction, self.op_code) |
|
|
|
@ -1937,7 +1936,7 @@ class Instruction: |
|
|
|
|
instr = global_state.get_current_instruction() |
|
|
|
|
|
|
|
|
|
try: |
|
|
|
|
callee_address, _, _, value, _, _, memory_out_offset, memory_out_size = get_call_parameters( |
|
|
|
|
callee_address, _, _, value, _, memory_out_offset, memory_out_size = get_call_parameters( |
|
|
|
|
global_state, self.dynamic_loader |
|
|
|
|
) |
|
|
|
|
except ValueError as e: |
|
|
|
@ -2002,7 +2001,7 @@ class Instruction: |
|
|
|
|
# TODO: implement me |
|
|
|
|
instr = global_state.get_current_instruction() |
|
|
|
|
try: |
|
|
|
|
callee_address, callee_account, call_data, value, call_data_type, gas, memory_out_offset, memory_out_size = get_call_parameters( |
|
|
|
|
callee_address, callee_account, call_data, value, gas, memory_out_offset, memory_out_size = get_call_parameters( |
|
|
|
|
global_state, self.dynamic_loader |
|
|
|
|
) |
|
|
|
|
except ValueError as e: |
|
|
|
|