target/hexagon: Implement hexagon_resume_threads()
Reviewed-by: Taylor Simpson <ltaylorsimpson@gmail.com> Signed-off-by: Brian Cain <brian.cain@oss.qualcomm.com>
Brian Cain committed
Jun 22, 2026 at 15:28 UTC
5c1f16f04a03f4d8d4c3537ccee53d73be2ff534
2 files changed
+3
-1
target/hexagon/cpu.h
+1
@@ -52,6 +52,7 @@ typedef struct HexagonGlobalRegState HexagonGlobalRegState;
52
#define PRED_WRITES_MAX 5 /* 4 insns + endloop */
53
#define VSTORES_MAX 2
54
#define MAX_TLB_ENTRIES 1024
55
+#define THREADS_MAX 8
56
57
#define CPU_RESOLVING_TYPE TYPE_HEXAGON_CPU
58
#ifndef CONFIG_USER_ONLY
target/hexagon/op_helper.c
+2
-1
@@ -1601,7 +1601,8 @@ void HELPER(wait)(CPUHexagonState *env, uint32_t PC)
1601
1602
void HELPER(resume)(CPUHexagonState *env, uint32_t mask)
1603
{
1604
- g_assert_not_reached();
1604
+ BQL_LOCK_GUARD();
1605
+ hexagon_resume_threads(env, mask);
1606
}
1607
1608
uint32_t HELPER(getimask)(CPUHexagonState *env, uint32_t tid)