diff options
-rw-r--r-- | .gitignore | 2 | ||||
-rw-r--r-- | src/lib/netlist/nl_lists.h | 9 |
2 files changed, 7 insertions, 4 deletions
diff --git a/.gitignore b/.gitignore index b5573638381..abbcbee172e 100644 --- a/.gitignore +++ b/.gitignore @@ -31,7 +31,7 @@ !/makefile !/mame.doxygen !/*.md -!/*.bdc +!/*.bdf !/LICENSE /.idea regtests/chdman/temp diff --git a/src/lib/netlist/nl_lists.h b/src/lib/netlist/nl_lists.h index ac288fec153..eb0fe0700f2 100644 --- a/src/lib/netlist/nl_lists.h +++ b/src/lib/netlist/nl_lists.h @@ -13,6 +13,9 @@ #include "nl_config.h" #include "plib/plists.h" +#include <atomic> + + // ---------------------------------------------------------------------------------------- // timed queue // ---------------------------------------------------------------------------------------- @@ -62,7 +65,7 @@ namespace netlist { #if HAS_OPENMP && USE_OPENMP /* Lock */ - while (atomic_exchange32(&m_lock, 1)) { } + while (m_lock.exchange(1)) { } #endif const _Time &t = e.exec_time(); entry_t * i = m_end++; @@ -94,7 +97,7 @@ namespace netlist { /* Lock */ #if HAS_OPENMP && USE_OPENMP - while (atomic_exchange32(&m_lock, 1)) { } + while (m_lock.exchange(1)) { } #endif for (entry_t * i = m_end - 1; i > &m_list[0]; i--) { @@ -143,7 +146,7 @@ namespace netlist private: #if HAS_OPENMP && USE_OPENMP - volatile INT32 m_lock; + volatile std::atomic<int> m_lock; #endif entry_t * m_end; parray_t<entry_t> m_list; |