The Alpha port uses the alpha
keyword. It focuses upon HP (formerly Compaq
(formerly DEC)) hardware. This covers from ev4
(known as 21064) through
ev7z
(known as 21364a).
All Alpha systems use a pure 64 bit kernel and a pure 64 bit userland.
All Alpha systems support both little and big endian — however, Linux only uses little endian.
It is generally expected that anyone who does keywording for Alpha should be on
the alpha@
alias. However the Alpha team is happy if maintainers keyword
their packages when they have access to Alpha hardware, although the team would
like to know about it.
There are six basic Alpha instructions set standards:
ev4
or ev45
. The ev4
was the first Alpha processor of the Alpha
family. It featured one integer pipeline and one floating-point pipeline.
The ev45
is a modified ev4
with double both Data and Instruction cache
(D-Cache and I-Cache respectively); it also featured a division optimization.
ev5
is an evolution of the ev45
. The number of pipelines was doubled
and the floating-point pipelines run in 9 stages rather than in 10. The
ev5
supports 3 cache levels.
ev56
added the BWX extension to load/store data in 8 or 16 bit quanta.
pca56
added a new set, MVI (Motion Video Instructions), aimed to
accelerate video and audio calculations.
ev6
supports all extensions supported by the pca56
and a new set, FIX,
meant to move data between integer and floating-point registers and for square
root.
ev67
is an evolution of the ev6
, in addition it supports a new set.
CIX adds instructions for counting and finding bits.
When no -mcpu
option is passed to gcc
it defaults to the processor on
which the compiler was built.
The -mieee
flag should always be used unless you have a deep knowledge
of the Alpha architecture, so the comments on
Not Filtering Variables are
really important on Alpha.
General Position Independent Code policy also applies to Alpha. In fact, Alpha systems complain loudly if you try to link PIC and non-PIC code. Usually this results in errors during the compilation aborting emerge.
The Alpha team can be contacted:
alpha@
alpha@
email alias
gentoo-alpha
mailing list
#gentoo-alpha
IRC channel on Freenode