Safe Haskell | Safe-Infered |
---|
Platform
Description
A description of the platform we're compiling for.
- data Platform = Platform {}
- data Arch
- = ArchUnknown
- | ArchX86
- | ArchX86_64
- | ArchPPC
- | ArchPPC_64
- | ArchSPARC
- | ArchARM { }
- data OS
- = OSUnknown
- | OSLinux
- | OSDarwin
- | OSSolaris2
- | OSMinGW32
- | OSFreeBSD
- | OSOpenBSD
- | OSNetBSD
- | OSKFreeBSD
- | OSHaiku
- data ArmISA
- data ArmISAExt
- target32Bit :: Platform -> Bool
- osElfTarget :: OS -> Bool
Documentation
Contains enough information for the native code generator to emit code for this platform.
Constructors
Platform | |
Fields |
Architectures that the native code generator knows about. TODO: It might be nice to extend these constructors with information about what instruction set extensions an architecture might support.
Constructors
ArchUnknown | |
ArchX86 | |
ArchX86_64 | |
ArchPPC | |
ArchPPC_64 | |
ArchSPARC | |
ArchARM | |
Operating systems that the native code generator knows about. Having OSUnknown should produce a sensible default, but no promises.
ARM Instruction Set Architecture and Extensions
target32Bit :: Platform -> BoolSource
osElfTarget :: OS -> BoolSource
This predicates tells us whether the OS supports ELF-like shared libraries.