summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/i386/pc386/make/custom/pcp4.cfg
blob: 6804aee9a106cd4da2ca0652232ee56be85b9dc7 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#
#  Configuration file for a PC using a Pentium Class CPU
#

RTEMS_CPU_MODEL=pentium

#  This contains the compiler options necessary to select the CPU model
#  and enable architecture-specific features and extensions.

#  Note that the vanilla gcc multilibs for RTEMS are a joke. The
#  variants only differ by a -mtune=xxx option which merely 'optimizes'
#  for 'xxx' but does not use the full instruction set 'xxx' may implement.
#  (fully bwd compatible with i386).
#
#  I'd recommend to roll your own set of (useful) multilibs instead...
#
#  Useful variants would be
#    <default> (i386) (generic 386 with hard-float)
#    -msoft-float     (generic 386 with soft-float)
#    -march=pentium4  (P4 with sse2)
#
#  Note also: we give the -mtune=pentium option here only so that at least the
#             variant optimized for pentium (w/o using any pentium-specific
#             features) is used (assuming you use the vanilla RTEMS multilibs).
#  
#  And: The only sse-related feature the RTEMS support really needs is
#             fxsave/fxrstor. You can build with -msse, -msse2 or -msse3,
#             depending on your CPU.
#             There are run-time checks resulting in a 'panic' if code
#             compiled for e.g. -msse3 is executed on a CPU that only
#             supports sse2, though.
CPU_CFLAGS = -mtune=pentium4 -march=pentium4 -msse3

include $(RTEMS_ROOT)/make/custom/pc386.cfg