Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8e03bd4e authored by Cyril Bur's avatar Cyril Bur Committed by Michael Ellerman
Browse files

selftests/powerpc: Add TM tcheck helpers in C

parent 0886c6d4
Loading
Loading
Loading
Loading
+27 −0
Original line number Diff line number Diff line
@@ -52,4 +52,31 @@ static inline bool failure_is_nesting(void)
	return (__builtin_get_texasru() & 0x400000);
}

static inline int tcheck(void)
{
	long cr;
	asm volatile ("tcheck 0" : "=r"(cr) : : "cr0");
	return (cr >> 28) & 4;
}

static inline bool tcheck_doomed(void)
{
	return tcheck() & 8;
}

static inline bool tcheck_active(void)
{
	return tcheck() & 4;
}

static inline bool tcheck_suspended(void)
{
	return tcheck() & 2;
}

static inline bool tcheck_transactional(void)
{
	return tcheck() & 6;
}

#endif /* _SELFTESTS_POWERPC_TM_TM_H */