From d7ab08a306166b48f850f632b0da740ef6c8e7f9 Mon Sep 17 00:00:00 2001 From: Per Held Date: Thu, 13 Nov 2025 16:24:06 +0100 Subject: [PATCH 1/2] Arm backend: Fix ubsan warning in example runner Avoid dangerous pointer arithmetic by making sure EValue lands at its natural alignment (8 bytes on this target). Signed-off-by: per.held@arm.com Change-Id: I3efee39f5c36ea76e08373fccc5ff10c01cbc588 --- examples/arm/executor_runner/arm_executor_runner.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/examples/arm/executor_runner/arm_executor_runner.cpp b/examples/arm/executor_runner/arm_executor_runner.cpp index 696817450b5..69796f1e031 100644 --- a/examples/arm/executor_runner/arm_executor_runner.cpp +++ b/examples/arm/executor_runner/arm_executor_runner.cpp @@ -410,8 +410,7 @@ Error prepare_input_tensors( "Wrong number of inputs allocated compared to method"); #endif - EValue* input_evalues = - static_cast(allocator.allocate(num_inputs * sizeof(EValue*))); + EValue* input_evalues = allocator.allocateList(num_inputs); ET_CHECK_OR_RETURN_ERROR( input_evalues != nullptr, MemoryAllocationFailed, From 844e029f813837d10f34f472f745bacbc8d80188 Mon Sep 17 00:00:00 2001 From: Per Held Date: Mon, 17 Nov 2025 11:27:42 +0100 Subject: [PATCH 2/2] Arm backend: Increase method_allocator_input to 16 bytes Since memory allocation is aligned it takes more space. Signed-off-by: per.held@arm.com Change-Id: Ib1506d5f3a4383dba05f10c0082c31d37a8af80e --- backends/arm/test/test_arm_baremetal.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backends/arm/test/test_arm_baremetal.sh b/backends/arm/test/test_arm_baremetal.sh index 4bc4fe0f06d..1fe5a593228 100755 --- a/backends/arm/test/test_arm_baremetal.sh +++ b/backends/arm/test/test_arm_baremetal.sh @@ -390,7 +390,7 @@ test_memory_allocation() { --require "model_pte_program_size" "<= 3000 B" \ --require "method_allocator_planned" "<= 64 B" \ --require "method_allocator_loaded" "<= 1024 B" \ - --require "method_allocator_input" "<= 4 B" \ + --require "method_allocator_input" "<= 16 B" \ --require "Total DRAM used" "<= 0.06 KiB" echo "${TEST_SUITE_NAME}: PASS" }