commit | bb7aa6d47fcd4f9ab18b4ade2ba078f7719f74ca | [log] [tgz] |
---|---|---|
author | Haavard Skinnemoen <hskinnemoen@atmel.com> | Wed Oct 03 15:05:20 2007 +0200 |
committer | Haavard Skinnemoen <hskinnemoen@atmel.com> | Thu Oct 11 13:32:56 2007 +0200 |
tree | f44d5d49cf4d95c57e067bd004fe99d072625d7d | |
parent | 82c54f864fea26c4c44f27e2b4c4d9a811dde299 [diff] |
[AVR32] Don't use __builtin_xchg() The implementation of __builtin_xchg() in at least some versions of avr32 gcc is buggy. Rather than find out exactly which versions that have this bug, let's just avoid the problem altogether by implementing xchg() in inline assembly. Also, in most architectures, xchg() seems to imply a memory barrier, while the existing avr32 implementation did not. This patch also fixes that discrepancy. Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>