#
721a07ac |
|
25-Aug-2014 |
Paweł Dziepak <pdziepak@quarnos.org> |
libroot: remove ATOMIC_FUNCS_ARE_SYSCALLS GCC knows whether these functions need to be implemented using syscalls (or more clever solutions like in Linux) and calls libgcc in such case. Signed-off-by: Paweł Dziepak <pdziepak@quarnos.org>
|
#
aa58f7e4 |
|
25-Aug-2014 |
Paweł Dziepak <pdziepak@quarnos.org> |
os/arch: implement all atomic_*() using std::atomic<> Time to get rid of some asm code. Surprisingly, it appears that on x86[_64] the emitted code for atomic_test_and_get() isn't as efficient as it could be, even with -O2, but cmpxchg is so expensive that this slight difference shouldn't matter much. Signed-off-by: Paweł Dziepak <pdziepak@quarnos.org>
|
#
7a402b99 |
|
15-Aug-2014 |
Arvind S Raj <sraj.arvind@gmail.com> |
Reimplemented atomic_get_and_set in C++. Signed-off-by: Adrien Destugues <pulkomandy@pulkomandy.tk> * C++ code written by pdziepak.
|
#
721a07ac24df63af87afd8d52f5e08ec6566c9e0 |
|
25-Aug-2014 |
Paweł Dziepak <pdziepak@quarnos.org> |
libroot: remove ATOMIC_FUNCS_ARE_SYSCALLS GCC knows whether these functions need to be implemented using syscalls (or more clever solutions like in Linux) and calls libgcc in such case. Signed-off-by: Paweł Dziepak <pdziepak@quarnos.org>
|
#
aa58f7e431a5b295d9d83c59418d97bec7180fa8 |
|
25-Aug-2014 |
Paweł Dziepak <pdziepak@quarnos.org> |
os/arch: implement all atomic_*() using std::atomic<> Time to get rid of some asm code. Surprisingly, it appears that on x86[_64] the emitted code for atomic_test_and_get() isn't as efficient as it could be, even with -O2, but cmpxchg is so expensive that this slight difference shouldn't matter much. Signed-off-by: Paweł Dziepak <pdziepak@quarnos.org>
|
#
7a402b996e3884f840d91b6602b9057a4bad69c4 |
|
15-Aug-2014 |
Arvind S Raj <sraj.arvind@gmail.com> |
Reimplemented atomic_get_and_set in C++. Signed-off-by: Adrien Destugues <pulkomandy@pulkomandy.tk> * C++ code written by pdziepak.
|