@@ -293,7 +293,6 @@ def generic_call(
293293 memory_input_size : U256 ,
294294 memory_output_start_position : U256 ,
295295 memory_output_size : U256 ,
296- code : Bytes ,
297296 disable_precompiles : bool ,
298297) -> None :
299298 """
@@ -308,6 +307,10 @@ def generic_call(
308307 push (evm .stack , U256 (0 ))
309308 return
310309
310+ tx_state = evm .message .tx_env .state
311+ code_hash = get_account (tx_state , code_address ).code_hash
312+ code = get_code (tx_state , code_hash )
313+
311314 call_data = memory_read_bytes (
312315 evm .memory , memory_input_start_position , memory_input_size
313316 )
@@ -419,9 +422,6 @@ def call(evm: Evm) -> None:
419422 if code_address not in evm .accessed_addresses :
420423 evm .accessed_addresses .add (code_address )
421424
422- code_hash = get_account (tx_state , code_address ).code_hash
423- code = get_code (tx_state , code_hash )
424-
425425 message_call_gas = calculate_message_call_gas (
426426 value ,
427427 gas ,
@@ -452,7 +452,6 @@ def call(evm: Evm) -> None:
452452 memory_input_size ,
453453 memory_output_start_position ,
454454 memory_output_size ,
455- code ,
456455 is_delegated ,
457456 )
458457
@@ -523,9 +522,6 @@ def callcode(evm: Evm) -> None:
523522 if code_address not in evm .accessed_addresses :
524523 evm .accessed_addresses .add (code_address )
525524
526- code_hash = get_account (tx_state , code_address ).code_hash
527- code = get_code (tx_state , code_hash )
528-
529525 message_call_gas = calculate_message_call_gas (
530526 value ,
531527 gas ,
@@ -557,7 +553,6 @@ def callcode(evm: Evm) -> None:
557553 memory_input_size ,
558554 memory_output_start_position ,
559555 memory_output_size ,
560- code ,
561556 is_delegated ,
562557 )
563558
@@ -666,7 +661,6 @@ def delegatecall(evm: Evm) -> None:
666661 check_gas (evm , access_gas_cost + extend_memory .cost )
667662
668663 # STATE ACCESS
669- tx_state = evm .message .tx_env .state
670664 if is_cold_access :
671665 evm .accessed_addresses .add (code_address )
672666
@@ -684,9 +678,6 @@ def delegatecall(evm: Evm) -> None:
684678 if code_address not in evm .accessed_addresses :
685679 evm .accessed_addresses .add (code_address )
686680
687- code_hash = get_account (tx_state , code_address ).code_hash
688- code = get_code (tx_state , code_hash )
689-
690681 message_call_gas = calculate_message_call_gas (
691682 U256 (0 ),
692683 gas ,
@@ -711,7 +702,6 @@ def delegatecall(evm: Evm) -> None:
711702 memory_input_size ,
712703 memory_output_start_position ,
713704 memory_output_size ,
714- code ,
715705 is_delegated ,
716706 )
717707
@@ -756,7 +746,6 @@ def staticcall(evm: Evm) -> None:
756746 check_gas (evm , access_gas_cost + extend_memory .cost )
757747
758748 # STATE ACCESS
759- tx_state = evm .message .tx_env .state
760749 if is_cold_access :
761750 evm .accessed_addresses .add (to )
762751
@@ -774,9 +763,6 @@ def staticcall(evm: Evm) -> None:
774763 if code_address not in evm .accessed_addresses :
775764 evm .accessed_addresses .add (code_address )
776765
777- code_hash = get_account (tx_state , code_address ).code_hash
778- code = get_code (tx_state , code_hash )
779-
780766 message_call_gas = calculate_message_call_gas (
781767 U256 (0 ),
782768 gas ,
@@ -801,7 +787,6 @@ def staticcall(evm: Evm) -> None:
801787 memory_input_size ,
802788 memory_output_start_position ,
803789 memory_output_size ,
804- code ,
805790 is_delegated ,
806791 )
807792
0 commit comments