ovni/test/emu/nosv/mutex.c

33 lines
640 B
C

/* Copyright (c) 2024 Barcelona Supercomputing Center (BSC)
* SPDX-License-Identifier: GPL-3.0-or-later */
#include "compat.h"
#include "instr.h"
#include "instr_nosv.h"
/* Test the nosv_mutex_lock(), nosv_mutex_trylock() and nosv_mutex_unlock() API
* events, introduced in the nOS-V model 2.1.0 */
int
main(void)
{
instr_start(0, 1);
instr_nosv_init();
instr_nosv_mutex_lock_enter();
sleep_us(100);
instr_nosv_mutex_lock_exit();
instr_nosv_mutex_trylock_enter();
sleep_us(100);
instr_nosv_mutex_trylock_exit();
instr_nosv_mutex_unlock_enter();
sleep_us(100);
instr_nosv_mutex_unlock_exit();
instr_end();
return 0;
}