MCPcopy Create free account
hub / github.com/PCSX2/pcsx2 / MultiPause

Function MultiPause

common/HostSys.cpp:14–46  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

12static u32 PAUSE_TIME = 0;
13
14static void MultiPause()
15{
16#ifdef ARCH_X86
17 _mm_pause();
18 _mm_pause();
19 _mm_pause();
20 _mm_pause();
21 _mm_pause();
22 _mm_pause();
23 _mm_pause();
24 _mm_pause();
25#elif defined(ARCH_ARM64) && defined(_MSC_VER)
26 __isb(_ARM64_BARRIER_SY);
27 __isb(_ARM64_BARRIER_SY);
28 __isb(_ARM64_BARRIER_SY);
29 __isb(_ARM64_BARRIER_SY);
30 __isb(_ARM64_BARRIER_SY);
31 __isb(_ARM64_BARRIER_SY);
32 __isb(_ARM64_BARRIER_SY);
33 __isb(_ARM64_BARRIER_SY);
34#elif defined(ARCH_ARM64)
35 __asm__ __volatile__("isb");
36 __asm__ __volatile__("isb");
37 __asm__ __volatile__("isb");
38 __asm__ __volatile__("isb");
39 __asm__ __volatile__("isb");
40 __asm__ __volatile__("isb");
41 __asm__ __volatile__("isb");
42 __asm__ __volatile__("isb");
43#else
44#error Unknown architecture.
45#endif
46}
47
48static u32 MeasurePauseTime()
49{

Callers 2

MeasurePauseTimeFunction · 0.85
ShortSpinFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected