ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Control
CxxUtils
CxxUtils
stall.h
Go to the documentation of this file.
1
// This file's extension implies that it's C, but it's really -*- C++ -*-.
2
/*
3
* Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration.
4
*/
11
12
13
#ifndef CXXUTILS_STALL_H
14
#define CXXUTILS_STALL_H
15
16
17
#if defined(__i386__) || defined(__x86_64__)
18
# include <xmmintrin.h>
19
#endif
20
21
22
namespace
CxxUtils
{
23
24
36
inline
37
void
stall()
38
{
39
#if defined(__i386__) || defined(__x86_64__)
40
_mm_pause();
41
#elif defined(__aarch64__) && defined(__GNUC__)
42
asm
volatile
(
"yield"
:::
"memory"
);
43
#endif
44
}
45
46
47
}
// namespace CxxUtils
48
49
50
#endif
// not CXXUTILS_STALL_H
CxxUtils
Definition
aligned_vector.h:29
Generated on
for ATLAS Offline Software by
1.17.0