Under an x86 processor I am not sure of the difference between compare-and-swap atomic operation and Load-link/store-conditional operation. Is the latter safer than the former? Is it the case that the first is better than the second?
x86 does not provide LL/SC instructions. Check out wikipedia for platforms that do. Also see this SO question.