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 + + // ---------------------------------------------------------------------------------------- // 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 m_lock; #endif entry_t * m_end; parray_t m_list;