diff options
author | Pavel Pisa <pisa@cmp.felk.cvut.cz> | 2016-10-12 09:47:00 +0200 |
---|---|---|
committer | Pavel Pisa <pisa@cmp.felk.cvut.cz> | 2016-10-17 09:41:58 +0200 |
commit | 20625a581de4faaf002a4cc3fa3ea29a9c7a04f7 (patch) | |
tree | cfa10114539fa2a917809e5075d7cbf9ca2525bc /c/src/libchip | |
parent | bsps/i386: replace global interrupt disable by SMP build supporting locking. (diff) | |
download | rtems-20625a581de4faaf002a4cc3fa3ea29a9c7a04f7.tar.bz2 |
bsps/i386: use Pentimum instructions for pc586 and pc686 builds.
When GCC option -march is not specifies i386-rtems toolchain
defaults to i386 architecture instruction set. It does not
provide atomic instructions which results in really inefficient
atomic_fetch_or even on UP build.
SMP build is broken with i386 set because libatomic and GCC
generate infinite loop for __atomic_fetch_add_4 used
in rtems_interrupt_lock_acquire
__atomic_fetch_add_4:
push %ebp
mov %esp,%ebp
movl $0x5,0x10(%ebp)
pop %ebp
jmp __atomic_fetch_add_4
Diffstat (limited to 'c/src/libchip')
0 files changed, 0 insertions, 0 deletions