[devel] i586 -> i686
Alexey Tourbin
at на altlinux.ru
Пн Фев 28 23:45:39 UTC 2011
On Tue, Mar 01, 2011 at 12:49:15AM +0300, Sergey Y. Afonin wrote:
> On Tuesday 01 March 2011, Alexey Tourbin wrote:
>
> > Типичными конфигурациями были P200 + 32M (i586) и Celeron 300A + 64M (i686).
>
> Где-то в это время быстрой птицей промелькнул AMD K6-II. Он, вроде бы,
> не i686. А вот 64M там не редкость уже была. Как и NVidia/AGP, например
> на материнке Iwill XA100 и прочих похожих. Их продано было, очевидно,
> поменьше, чем Intel, но они были.
Да, K6 пролетает, в нём нету cmov.
http://forums.fedoraforum.org/showthread.php?t=249126
С точки зрения кодогенератора cmov - это единственное отличие
между i586 и более старшими архитектурами. Остальные отличия
уже идут по линии SMID-инструкций (MMX, SSE).
gcc-4*/gcc/config/i386/i386.c:
1634 /* Feature tests against the various architecture variations, used to create
1635 ix86_arch_features based on the processor mask. */
1636 static unsigned int initial_ix86_arch_features[X86_ARCH_LAST] = {
1637 /* X86_ARCH_CMOVE: Conditional move was added for pentiumpro. */
1638 ~(m_386 | m_486 | m_PENT | m_K6),
Здесь видно, что K6 находится в компании с младшими братьями.
1639
1640 /* X86_ARCH_CMPXCHG: Compare and exchange was added for 80486. */
1641 ~m_386,
1642
1643 /* X86_ARCH_CMPXCHG8B: Compare and exchange 8 bytes was added for pentium. */
1644 ~(m_386 | m_486),
1645
1646 /* X86_ARCH_XADD: Exchange and add was added for 80486. */
1647 ~m_386,
1648
1649 /* X86_ARCH_BSWAP: Byteswap was added for 80486. */
1650 ~m_386,
1651 };
Подробная информация о списке рассылки Devel