Changeset 20625a5 in rtems for c/src/lib

Timestamp:
10/12/16 07:47:00 (8 years ago)
Author:
Pavel Pisa <pisa@…>
Branches:
5, master
Children:
dfcec559
Parents:
6b54dcb
git-author:
Pavel Pisa <pisa@…> (10/12/16 07:47:00)
git-committer:
Pavel Pisa <pisa@…> (10/17/16 07:41:58)
Message:

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

(No files)

Note: See TracChangeset for help on using the changeset viewer.