musl/arch/microblaze
Rich Felker 884cc0c7e2 fix microblaze atomic store
as far as I can tell, microblaze is strongly ordered, but this does
not seem to be well-documented and the assumption may need revisiting.
even with strong ordering, however, a volatile C assignment is not
sufficient to implement atomic store, since it does not preclude
reordering by the compiler with respect to non-volatile stores and
loads.

simply flanking a C store with empty volatile asm blocks with memory
clobbers would achieve the desired result, but is likely to result in
worse code generation, since the address and value for the store may
need to be spilled. actually writing the store in asm, so that there's
only one asm block, should give optimal code generation while
satisfying the requirement for having a compiler barrier.
2014-07-19 18:23:24 -04:00
..
bits fix microblaze definition of struct stat 2014-07-18 14:55:30 -04:00
atomic.h fix microblaze atomic store 2014-07-19 18:23:24 -04:00
crt_arch.h new mostly-C crt1 implementation 2013-07-26 01:49:14 -04:00
pthread_arch.h add support for TLS variant I, presently needed for arm and mips 2012-10-15 18:51:53 -04:00
reloc.h refactor to remove arch-specific relocation code from dynamic linker 2014-06-18 02:44:02 -04:00
syscall_arch.h fix microblaze syscall register clobbers 2014-04-02 14:13:20 -04:00