/* * Copyright (c) 2025 BayLibre SAS * * * SPDX-License-Identifier: Apache-2.0 */ #include "syskernel.h" static void *malloc_array[NUMBER_OF_LOOPS]; static void do_malloc(int loops) { int i; for (i = 0; i < loops; i++) { malloc_array[i] = k_malloc(1); } } static void do_free(int loops) { int i; for (i = 0; i < loops; i++) { k_free(malloc_array[i]); } } int malloc_test(void) { uint32_t t; int return_value = 0; fprintf(output_file, sz_test_case_fmt, "malloc #1"); fprintf(output_file, sz_description, "\n\tk_malloc"); printf(sz_test_start_fmt); t = BENCH_START(); do_malloc(number_of_loops); t = TIME_STAMP_DELTA_GET(t); return_value += check_result(number_of_loops, t); fprintf(output_file, sz_test_case_fmt, "malloc #2"); fprintf(output_file, sz_description, "\n\tk_free"); printf(sz_test_start_fmt); t = BENCH_START(); do_free(number_of_loops); t = TIME_STAMP_DELTA_GET(t); return_value += check_result(number_of_loops, t); return return_value; }