Changes in kernel/arch/sparc32/src/sparc32.c [6601f9b:208b5f5] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/sparc32/src/sparc32.c
r6601f9b r208b5f5 37 37 #include <arch/interrupt.h> 38 38 #include <arch/asm.h> 39 #include <arch/barrier.h>40 39 #include <arch/machine_func.h> 41 40 #include <func.h> … … 170 169 } 171 170 172 bool __atomic_compare_exchange_4(uint32_t *ptr, uint32_t *expected,173 uint32_t desired, bool weak, int success_mm, int failure_mm)174 {175 ipl_t ipl;176 bool success;177 178 /* XXX: This is a rather dummy implementation. */179 180 ipl = interrupts_disable();181 memory_barrier();182 if (*ptr == *expected) {183 success = true;184 *ptr = desired;185 } else {186 success = false;187 *expected = *ptr;188 }189 memory_barrier();190 interrupts_restore(ipl);191 192 return success;193 }194 195 171 /** @} 196 172 */
Note:
See TracChangeset
for help on using the changeset viewer.