Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • libcfa/src/concurrency/kernel.cfa

    rf2384c9a rdab09ad  
    103103        // Do it here
    104104        kernelTLS.rand_seed ^= rdtscl();
    105         kernelTLS.ready_rng.fwd_seed = 25214903917_l64u * (rdtscl() ^ (uintptr_t)&runner);
    106         __tls_rand_advance_bck();
    107105
    108106        processor * this = runner.proc;
     
    534532                unsigned total   = this.total;
    535533                processor * proc = &this.list`first;
    536                 // Compiler fence is unnecessary, but gcc-8 and older incorrectly reorder code without it
    537                 asm volatile("": : :"memory");
     534                // Thread fence is unnecessary, but gcc-8 and older incorrectly reorder code without it
     535                __atomic_thread_fence(__ATOMIC_SEQ_CST);
    538536                if(l != __atomic_load_n(&this.lock, __ATOMIC_SEQ_CST)) { Pause(); continue; }
    539537                return [idle, total, proc];
Note: See TracChangeset for help on using the changeset viewer.