From d57b62fff3d7a5a867b63e259108c1dbb0530665 Mon Sep 17 00:00:00 2001 From: wborgeaud Date: Thu, 18 May 2023 15:48:43 +0200 Subject: [PATCH] Perform jumpdest analysis whenever entering a new context (#1049) --- evm/src/cpu/kernel/asm/core/call.asm | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/evm/src/cpu/kernel/asm/core/call.asm b/evm/src/cpu/kernel/asm/core/call.asm index 1af4c5e8..adbe7412 100644 --- a/evm/src/cpu/kernel/asm/core/call.asm +++ b/evm/src/cpu/kernel/asm/core/call.asm @@ -323,6 +323,13 @@ call_insufficient_balance: DUP1 // new_ctx SET_CONTEXT %checkpoint // Checkpoint + // Perform jumpdest analyis + PUSH %%after + %mload_context_metadata(@CTX_METADATA_CODE_SIZE) + GET_CONTEXT + // stack: ctx, code_size, retdest + %jump(jumpdest_analysis) +%%after: PUSH 0 // jump dest EXIT_KERNEL // (Old context) stack: new_ctx