Safe Haskell | Safe |
---|---|
Language | Haskell2010 |
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 { }
- | ArchARM64
- | ArchAlpha
- | ArchMipseb
- | ArchMipsel
- | ArchJavaScript
- data OS
- data ArmISA
- data ArmISAExt
- data ArmABI
- data PPC_64ABI
- target32Bit :: Platform -> Bool
- isARM :: Arch -> Bool
- osElfTarget :: OS -> Bool
- osMachOTarget :: OS -> Bool
- platformUsesFrameworks :: Platform -> Bool
- platformBinariesAreStaticLibs :: Platform -> Bool
Documentation
data Platform
Contains enough information for the native code generator to emit code for this platform.
Constructors
Platform | |
data Arch
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.
data OS
Operating systems that the native code generator knows about. Having OSUnknown should produce a sensible default, but no promises.
data ArmISA
ARM Instruction Set Architecture, Extensions and ABI
data ArmISAExt
data PPC_64ABI
PowerPC 64-bit ABI
target32Bit :: Platform -> Bool
This predicate tells us whether the platform is 32-bit.
osElfTarget :: OS -> Bool
This predicate tells us whether the OS supports ELF-like shared libraries.
osMachOTarget :: OS -> Bool
This predicate tells us whether the OS support Mach-O shared libraries.