GHC.Settings

ghc-9.0.1: The GHC API

Safe Haskell | None
Language | Haskell2010

GHC.Settings

Contents

- Accessors

Description

Run-time settings

Synopsis

- data Settings = Settings {
  - sGhcNameVersion :: !GhcNameVersion
  - sFileSettings :: !FileSettings
  - sTargetPlatform :: Platform
  - sToolSettings :: !ToolSettings
  - sPlatformMisc :: !PlatformMisc
  - sPlatformConstants :: PlatformConstants
  - sRawSettings :: [(String, String)]
  }
- data ToolSettings = ToolSettings {
  - toolSettings_ldSupportsCompactUnwind :: Bool
  - toolSettings_ldSupportsBuildId :: Bool
  - toolSettings_ldSupportsFilelist :: Bool
  - toolSettings_ldIsGnuLd :: Bool
  - toolSettings_ccSupportsNoPie :: Bool
  - toolSettings_pgm_L :: String
  - toolSettings_pgm_P :: (String, [Option])
  - toolSettings_pgm_F :: String
  - toolSettings_pgm_c :: String
  - toolSettings_pgm_a :: (String, [Option])
  - toolSettings_pgm_l :: (String, [Option])
  - toolSettings_pgm_lm :: (String, [Option])
  - toolSettings_pgm_dll :: (String, [Option])
  - toolSettings_pgm_T :: String
  - toolSettings_pgm_windres :: String
  - toolSettings_pgm_libtool :: String
  - toolSettings_pgm_ar :: String
  - toolSettings_pgm_otool :: String
  - toolSettings_pgm_install_name_tool :: String
  - toolSettings_pgm_ranlib :: String
  - toolSettings_pgm_lo :: (String, [Option])
  - toolSettings_pgm_lc :: (String, [Option])
  - toolSettings_pgm_lcc :: (String, [Option])
  - toolSettings_pgm_i :: String
  - toolSettings_opt_L :: [String]
  - toolSettings_opt_P :: [String]
  - toolSettings_opt_P_fingerprint :: Fingerprint
  - toolSettings_opt_F :: [String]
  - toolSettings_opt_c :: [String]
  - toolSettings_opt_cxx :: [String]
  - toolSettings_opt_a :: [String]
  - toolSettings_opt_l :: [String]
  - toolSettings_opt_lm :: [String]
  - toolSettings_opt_windres :: [String]
  - toolSettings_opt_lo :: [String]
  - toolSettings_opt_lc :: [String]
  - toolSettings_opt_lcc :: [String]
  - toolSettings_opt_i :: [String]
  - toolSettings_extraGccViaCFlags :: [String]
  }
- data FileSettings = FileSettings {
  - fileSettings_ghcUsagePath :: FilePath
  - fileSettings_ghciUsagePath :: FilePath
  - fileSettings_toolDir :: Maybe FilePath
  - fileSettings_topDir :: FilePath
  - fileSettings_tmpDir :: String
  - fileSettings_globalPackageDatabase :: FilePath
  }
- data GhcNameVersion = GhcNameVersion {
  - ghcNameVersion_programName :: String
  - ghcNameVersion_projectVersion :: String
  }
- data PlatformConstants = PlatformConstants {
  - pc_CONTROL_GROUP_CONST_291 :: Int
  - pc_STD_HDR_SIZE :: Int
  - pc_PROF_HDR_SIZE :: Int
  - pc_BLOCK_SIZE :: Int
  - pc_BLOCKS_PER_MBLOCK :: Int
  - pc_TICKY_BIN_COUNT :: Int
  - pc_OFFSET_StgRegTable_rR1 :: Int
  - pc_OFFSET_StgRegTable_rR2 :: Int
  - pc_OFFSET_StgRegTable_rR3 :: Int
  - pc_OFFSET_StgRegTable_rR4 :: Int
  - pc_OFFSET_StgRegTable_rR5 :: Int
  - pc_OFFSET_StgRegTable_rR6 :: Int
  - pc_OFFSET_StgRegTable_rR7 :: Int
  - pc_OFFSET_StgRegTable_rR8 :: Int
  - pc_OFFSET_StgRegTable_rR9 :: Int
  - pc_OFFSET_StgRegTable_rR10 :: Int
  - pc_OFFSET_StgRegTable_rF1 :: Int
  - pc_OFFSET_StgRegTable_rF2 :: Int
  - pc_OFFSET_StgRegTable_rF3 :: Int
  - pc_OFFSET_StgRegTable_rF4 :: Int
  - pc_OFFSET_StgRegTable_rF5 :: Int
  - pc_OFFSET_StgRegTable_rF6 :: Int
  - pc_OFFSET_StgRegTable_rD1 :: Int
  - pc_OFFSET_StgRegTable_rD2 :: Int
  - pc_OFFSET_StgRegTable_rD3 :: Int
  - pc_OFFSET_StgRegTable_rD4 :: Int
  - pc_OFFSET_StgRegTable_rD5 :: Int
  - pc_OFFSET_StgRegTable_rD6 :: Int
  - pc_OFFSET_StgRegTable_rXMM1 :: Int
  - pc_OFFSET_StgRegTable_rXMM2 :: Int
  - pc_OFFSET_StgRegTable_rXMM3 :: Int
  - pc_OFFSET_StgRegTable_rXMM4 :: Int
  - pc_OFFSET_StgRegTable_rXMM5 :: Int
  - pc_OFFSET_StgRegTable_rXMM6 :: Int
  - pc_OFFSET_StgRegTable_rYMM1 :: Int
  - pc_OFFSET_StgRegTable_rYMM2 :: Int
  - pc_OFFSET_StgRegTable_rYMM3 :: Int
  - pc_OFFSET_StgRegTable_rYMM4 :: Int
  - pc_OFFSET_StgRegTable_rYMM5 :: Int
  - pc_OFFSET_StgRegTable_rYMM6 :: Int
  - pc_OFFSET_StgRegTable_rZMM1 :: Int
  - pc_OFFSET_StgRegTable_rZMM2 :: Int
  - pc_OFFSET_StgRegTable_rZMM3 :: Int
  - pc_OFFSET_StgRegTable_rZMM4 :: Int
  - pc_OFFSET_StgRegTable_rZMM5 :: Int
  - pc_OFFSET_StgRegTable_rZMM6 :: Int
  - pc_OFFSET_StgRegTable_rL1 :: Int
  - pc_OFFSET_StgRegTable_rSp :: Int
  - pc_OFFSET_StgRegTable_rSpLim :: Int
  - pc_OFFSET_StgRegTable_rHp :: Int
  - pc_OFFSET_StgRegTable_rHpLim :: Int
  - pc_OFFSET_StgRegTable_rCCCS :: Int
  - pc_OFFSET_StgRegTable_rCurrentTSO :: Int
  - pc_OFFSET_StgRegTable_rCurrentNursery :: Int
  - pc_OFFSET_StgRegTable_rHpAlloc :: Int
  - pc_OFFSET_stgEagerBlackholeInfo :: Int
  - pc_OFFSET_stgGCEnter1 :: Int
  - pc_OFFSET_stgGCFun :: Int
  - pc_OFFSET_Capability_r :: Int
  - pc_OFFSET_bdescr_start :: Int
  - pc_OFFSET_bdescr_free :: Int
  - pc_OFFSET_bdescr_blocks :: Int
  - pc_OFFSET_bdescr_flags :: Int
  - pc_SIZEOF_CostCentreStack :: Int
  - pc_OFFSET_CostCentreStack_mem_alloc :: Int
  - pc_REP_CostCentreStack_mem_alloc :: Int
  - pc_OFFSET_CostCentreStack_scc_count :: Int
  - pc_REP_CostCentreStack_scc_count :: Int
  - pc_OFFSET_StgHeader_ccs :: Int
  - pc_OFFSET_StgHeader_ldvw :: Int
  - pc_SIZEOF_StgSMPThunkHeader :: Int
  - pc_OFFSET_StgEntCounter_allocs :: Int
  - pc_REP_StgEntCounter_allocs :: Int
  - pc_OFFSET_StgEntCounter_allocd :: Int
  - pc_REP_StgEntCounter_allocd :: Int
  - pc_OFFSET_StgEntCounter_registeredp :: Int
  - pc_OFFSET_StgEntCounter_link :: Int
  - pc_OFFSET_StgEntCounter_entry_count :: Int
  - pc_SIZEOF_StgUpdateFrame_NoHdr :: Int
  - pc_SIZEOF_StgMutArrPtrs_NoHdr :: Int
  - pc_OFFSET_StgMutArrPtrs_ptrs :: Int
  - pc_OFFSET_StgMutArrPtrs_size :: Int
  - pc_SIZEOF_StgSmallMutArrPtrs_NoHdr :: Int
  - pc_OFFSET_StgSmallMutArrPtrs_ptrs :: Int
  - pc_SIZEOF_StgArrBytes_NoHdr :: Int
  - pc_OFFSET_StgArrBytes_bytes :: Int
  - pc_OFFSET_StgTSO_alloc_limit :: Int
  - pc_OFFSET_StgTSO_cccs :: Int
  - pc_OFFSET_StgTSO_stackobj :: Int
  - pc_OFFSET_StgStack_sp :: Int
  - pc_OFFSET_StgStack_stack :: Int
  - pc_OFFSET_StgUpdateFrame_updatee :: Int
  - pc_OFFSET_StgFunInfoExtraFwd_arity :: Int
  - pc_REP_StgFunInfoExtraFwd_arity :: Int
  - pc_SIZEOF_StgFunInfoExtraRev :: Int
  - pc_OFFSET_StgFunInfoExtraRev_arity :: Int
  - pc_REP_StgFunInfoExtraRev_arity :: Int
  - pc_MAX_SPEC_SELECTEE_SIZE :: Int
  - pc_MAX_SPEC_AP_SIZE :: Int
  - pc_MIN_PAYLOAD_SIZE :: Int
  - pc_MIN_INTLIKE :: Int
  - pc_MAX_INTLIKE :: Int
  - pc_MIN_CHARLIKE :: Int
  - pc_MAX_CHARLIKE :: Int
  - pc_MUT_ARR_PTRS_CARD_BITS :: Int
  - pc_MAX_Vanilla_REG :: Int
  - pc_MAX_Float_REG :: Int
  - pc_MAX_Double_REG :: Int
  - pc_MAX_Long_REG :: Int
  - pc_MAX_XMM_REG :: Int
  - pc_MAX_Real_Vanilla_REG :: Int
  - pc_MAX_Real_Float_REG :: Int
  - pc_MAX_Real_Double_REG :: Int
  - pc_MAX_Real_XMM_REG :: Int
  - pc_MAX_Real_Long_REG :: Int
  - pc_RESERVED_C_STACK_BYTES :: Int
  - pc_RESERVED_STACK_WORDS :: Int
  - pc_AP_STACK_SPLIM :: Int
  - pc_WORD_SIZE :: Int
  - pc_CINT_SIZE :: Int
  - pc_CLONG_SIZE :: Int
  - pc_CLONG_LONG_SIZE :: Int
  - pc_BITMAP_BITS_SHIFT :: Int
  - pc_TAG_BITS :: Int
  - pc_DYNAMIC_BY_DEFAULT :: Bool
  - pc_LDV_SHIFT :: Int
  - pc_ILDV_CREATE_MASK :: Integer
  - pc_ILDV_STATE_CREATE :: Integer
  - pc_ILDV_STATE_USE :: Integer
  }
- data Platform = Platform {
  - platformMini :: !PlatformMini
  - platformWordSize :: !PlatformWordSize
  - platformByteOrder :: !ByteOrder
  - platformUnregisterised :: !Bool
  - platformHasGnuNonexecStack :: !Bool
  - platformHasIdentDirective :: !Bool
  - platformHasSubsectionsViaSymbols :: !Bool
  - platformIsCrossCompiling :: !Bool
  - platformLeadingUnderscore :: !Bool
  - platformTablesNextToCode :: !Bool
  }
- data PlatformMisc = PlatformMisc {
  - platformMisc_targetPlatformString :: String
  - platformMisc_ghcWithInterpreter :: Bool
  - platformMisc_ghcWithSMP :: Bool
  - platformMisc_ghcRTSWays :: String
  - platformMisc_libFFI :: Bool
  - platformMisc_ghcThreaded :: Bool
  - platformMisc_ghcDebugged :: Bool
  - platformMisc_ghcRtsWithLibdw :: Bool
  - platformMisc_llvmTarget :: String
  }
- data PlatformMini = PlatformMini {
  - platformMini_arch :: Arch
  - platformMini_os :: OS
  }
- sProgramName :: Settings -> String
- sProjectVersion :: Settings -> String
- sGhcUsagePath :: Settings -> FilePath
- sGhciUsagePath :: Settings -> FilePath
- sToolDir :: Settings -> Maybe FilePath
- sTopDir :: Settings -> FilePath
- sTmpDir :: Settings -> String
- sGlobalPackageDatabasePath :: Settings -> FilePath
- sLdSupportsCompactUnwind :: Settings -> Bool
- sLdSupportsBuildId :: Settings -> Bool
- sLdSupportsFilelist :: Settings -> Bool
- sLdIsGnuLd :: Settings -> Bool
- sGccSupportsNoPie :: Settings -> Bool
- sPgm_L :: Settings -> String
- sPgm_P :: Settings -> (String, [Option])
- sPgm_F :: Settings -> String
- sPgm_c :: Settings -> String
- sPgm_a :: Settings -> (String, [Option])
- sPgm_l :: Settings -> (String, [Option])
- sPgm_lm :: Settings -> (String, [Option])
- sPgm_dll :: Settings -> (String, [Option])
- sPgm_T :: Settings -> String
- sPgm_windres :: Settings -> String
- sPgm_libtool :: Settings -> String
- sPgm_ar :: Settings -> String
- sPgm_otool :: Settings -> String
- sPgm_install_name_tool :: Settings -> String
- sPgm_ranlib :: Settings -> String
- sPgm_lo :: Settings -> (String, [Option])
- sPgm_lc :: Settings -> (String, [Option])
- sPgm_lcc :: Settings -> (String, [Option])
- sPgm_i :: Settings -> String
- sOpt_L :: Settings -> [String]
- sOpt_P :: Settings -> [String]
- sOpt_P_fingerprint :: Settings -> Fingerprint
- sOpt_F :: Settings -> [String]
- sOpt_c :: Settings -> [String]
- sOpt_cxx :: Settings -> [String]
- sOpt_a :: Settings -> [String]
- sOpt_l :: Settings -> [String]
- sOpt_lm :: Settings -> [String]
- sOpt_windres :: Settings -> [String]
- sOpt_lo :: Settings -> [String]
- sOpt_lc :: Settings -> [String]
- sOpt_lcc :: Settings -> [String]
- sOpt_i :: Settings -> [String]
- sExtraGccViaCFlags :: Settings -> [String]
- sTargetPlatformString :: Settings -> String
- sGhcWithInterpreter :: Settings -> Bool
- sGhcWithSMP :: Settings -> Bool
- sGhcRTSWays :: Settings -> String
- sLibFFI :: Settings -> Bool
- sGhcThreaded :: Settings -> Bool
- sGhcDebugged :: Settings -> Bool
- sGhcRtsWithLibdw :: Settings -> Bool

# Documentation

data Settings Source #

Constructors

Settings |
Fields sGhcNameVersion :: !GhcNameVersion sFileSettings :: !FileSettings sTargetPlatform :: Platform sToolSettings :: !ToolSettings sPlatformMisc :: !PlatformMisc sPlatformConstants :: PlatformConstants sRawSettings :: [(String, String)]

data ToolSettings Source #

Settings for other executables GHC calls.

Probably should further split down by phase, or split between platform-specific and platform-agnostic.

Constructors

ToolSettings |
Fields toolSettings_ldSupportsCompactUnwind :: Bool toolSettings_ldSupportsBuildId :: Bool toolSettings_ldSupportsFilelist :: Bool toolSettings_ldIsGnuLd :: Bool toolSettings_ccSupportsNoPie :: Bool toolSettings_pgm_L :: String toolSettings_pgm_P :: (String, [Option]) toolSettings_pgm_F :: String toolSettings_pgm_c :: String toolSettings_pgm_a :: (String, [Option]) toolSettings_pgm_l :: (String, [Option]) toolSettings_pgm_lm :: (String, [Option]) toolSettings_pgm_dll :: (String, [Option]) toolSettings_pgm_T :: String toolSettings_pgm_windres :: String toolSettings_pgm_libtool :: String toolSettings_pgm_ar :: String toolSettings_pgm_otool :: String toolSettings_pgm_install_name_tool :: String toolSettings_pgm_ranlib :: String toolSettings_pgm_lo :: (String, [Option]) LLVM: opt llvm optimiser toolSettings_pgm_lc :: (String, [Option]) LLVM: llc static compiler toolSettings_pgm_lcc :: (String, [Option]) LLVM: c compiler toolSettings_pgm_i :: String toolSettings_opt_L :: [String] toolSettings_opt_P :: [String] toolSettings_opt_P_fingerprint :: Fingerprint cached Fingerprint of sOpt_P See Note [Repeated -optP hashing] toolSettings_opt_F :: [String] toolSettings_opt_c :: [String] toolSettings_opt_cxx :: [String] toolSettings_opt_a :: [String] toolSettings_opt_l :: [String] toolSettings_opt_lm :: [String] toolSettings_opt_windres :: [String] toolSettings_opt_lo :: [String] LLVM: llvm optimiser toolSettings_opt_lc :: [String] LLVM: llc static compiler toolSettings_opt_lcc :: [String] LLVM: c compiler toolSettings_opt_i :: [String] iserv options toolSettings_extraGccViaCFlags :: [String]

data FileSettings Source #

Paths to various files and directories used by GHC, including those that provide more settings.

Constructors

FileSettings |
Fields fileSettings_ghcUsagePath :: FilePath fileSettings_ghciUsagePath :: FilePath fileSettings_toolDir :: Maybe FilePath fileSettings_topDir :: FilePath fileSettings_tmpDir :: String fileSettings_globalPackageDatabase :: FilePath

data GhcNameVersion Source #

Settings for what GHC this is.

Constructors

GhcNameVersion |
Fields ghcNameVersion_programName :: String ghcNameVersion_projectVersion :: String

data PlatformConstants Source #

Constructors

PlatformConstants |
Fields pc_CONTROL_GROUP_CONST_291 :: Int pc_STD_HDR_SIZE :: Int pc_PROF_HDR_SIZE :: Int pc_BLOCK_SIZE :: Int pc_BLOCKS_PER_MBLOCK :: Int pc_TICKY_BIN_COUNT :: Int pc_OFFSET_StgRegTable_rR1 :: Int pc_OFFSET_StgRegTable_rR2 :: Int pc_OFFSET_StgRegTable_rR3 :: Int pc_OFFSET_StgRegTable_rR4 :: Int pc_OFFSET_StgRegTable_rR5 :: Int pc_OFFSET_StgRegTable_rR6 :: Int pc_OFFSET_StgRegTable_rR7 :: Int pc_OFFSET_StgRegTable_rR8 :: Int pc_OFFSET_StgRegTable_rR9 :: Int pc_OFFSET_StgRegTable_rR10 :: Int pc_OFFSET_StgRegTable_rF1 :: Int pc_OFFSET_StgRegTable_rF2 :: Int pc_OFFSET_StgRegTable_rF3 :: Int pc_OFFSET_StgRegTable_rF4 :: Int pc_OFFSET_StgRegTable_rF5 :: Int pc_OFFSET_StgRegTable_rF6 :: Int pc_OFFSET_StgRegTable_rD1 :: Int pc_OFFSET_StgRegTable_rD2 :: Int pc_OFFSET_StgRegTable_rD3 :: Int pc_OFFSET_StgRegTable_rD4 :: Int pc_OFFSET_StgRegTable_rD5 :: Int pc_OFFSET_StgRegTable_rD6 :: Int pc_OFFSET_StgRegTable_rXMM1 :: Int pc_OFFSET_StgRegTable_rXMM2 :: Int pc_OFFSET_StgRegTable_rXMM3 :: Int pc_OFFSET_StgRegTable_rXMM4 :: Int pc_OFFSET_StgRegTable_rXMM5 :: Int pc_OFFSET_StgRegTable_rXMM6 :: Int pc_OFFSET_StgRegTable_rYMM1 :: Int pc_OFFSET_StgRegTable_rYMM2 :: Int pc_OFFSET_StgRegTable_rYMM3 :: Int pc_OFFSET_StgRegTable_rYMM4 :: Int pc_OFFSET_StgRegTable_rYMM5 :: Int pc_OFFSET_StgRegTable_rYMM6 :: Int pc_OFFSET_StgRegTable_rZMM1 :: Int pc_OFFSET_StgRegTable_rZMM2 :: Int pc_OFFSET_StgRegTable_rZMM3 :: Int pc_OFFSET_StgRegTable_rZMM4 :: Int pc_OFFSET_StgRegTable_rZMM5 :: Int pc_OFFSET_StgRegTable_rZMM6 :: Int pc_OFFSET_StgRegTable_rL1 :: Int pc_OFFSET_StgRegTable_rSp :: Int pc_OFFSET_StgRegTable_rSpLim :: Int pc_OFFSET_StgRegTable_rHp :: Int pc_OFFSET_StgRegTable_rHpLim :: Int pc_OFFSET_StgRegTable_rCCCS :: Int pc_OFFSET_StgRegTable_rCurrentTSO :: Int pc_OFFSET_StgRegTable_rCurrentNursery :: Int pc_OFFSET_StgRegTable_rHpAlloc :: Int pc_OFFSET_stgEagerBlackholeInfo :: Int pc_OFFSET_stgGCEnter1 :: Int pc_OFFSET_stgGCFun :: Int pc_OFFSET_Capability_r :: Int pc_OFFSET_bdescr_start :: Int pc_OFFSET_bdescr_free :: Int pc_OFFSET_bdescr_blocks :: Int pc_OFFSET_bdescr_flags :: Int pc_SIZEOF_CostCentreStack :: Int pc_OFFSET_CostCentreStack_mem_alloc :: Int pc_REP_CostCentreStack_mem_alloc :: Int pc_OFFSET_CostCentreStack_scc_count :: Int pc_REP_CostCentreStack_scc_count :: Int pc_OFFSET_StgHeader_ccs :: Int pc_OFFSET_StgHeader_ldvw :: Int pc_SIZEOF_StgSMPThunkHeader :: Int pc_OFFSET_StgEntCounter_allocs :: Int pc_REP_StgEntCounter_allocs :: Int pc_OFFSET_StgEntCounter_allocd :: Int pc_REP_StgEntCounter_allocd :: Int pc_OFFSET_StgEntCounter_registeredp :: Int pc_OFFSET_StgEntCounter_link :: Int pc_OFFSET_StgEntCounter_entry_count :: Int pc_SIZEOF_StgUpdateFrame_NoHdr :: Int pc_SIZEOF_StgMutArrPtrs_NoHdr :: Int pc_OFFSET_StgMutArrPtrs_ptrs :: Int pc_OFFSET_StgMutArrPtrs_size :: Int pc_SIZEOF_StgSmallMutArrPtrs_NoHdr :: Int pc_OFFSET_StgSmallMutArrPtrs_ptrs :: Int pc_SIZEOF_StgArrBytes_NoHdr :: Int pc_OFFSET_StgArrBytes_bytes :: Int pc_OFFSET_StgTSO_alloc_limit :: Int pc_OFFSET_StgTSO_cccs :: Int pc_OFFSET_StgTSO_stackobj :: Int pc_OFFSET_StgStack_sp :: Int pc_OFFSET_StgStack_stack :: Int pc_OFFSET_StgUpdateFrame_updatee :: Int pc_OFFSET_StgFunInfoExtraFwd_arity :: Int pc_REP_StgFunInfoExtraFwd_arity :: Int pc_SIZEOF_StgFunInfoExtraRev :: Int pc_OFFSET_StgFunInfoExtraRev_arity :: Int pc_REP_StgFunInfoExtraRev_arity :: Int pc_MAX_SPEC_SELECTEE_SIZE :: Int pc_MAX_SPEC_AP_SIZE :: Int pc_MIN_PAYLOAD_SIZE :: Int pc_MIN_INTLIKE :: Int pc_MAX_INTLIKE :: Int pc_MIN_CHARLIKE :: Int pc_MAX_CHARLIKE :: Int pc_MUT_ARR_PTRS_CARD_BITS :: Int pc_MAX_Vanilla_REG :: Int pc_MAX_Float_REG :: Int pc_MAX_Double_REG :: Int pc_MAX_Long_REG :: Int pc_MAX_XMM_REG :: Int pc_MAX_Real_Vanilla_REG :: Int pc_MAX_Real_Float_REG :: Int pc_MAX_Real_Double_REG :: Int pc_MAX_Real_XMM_REG :: Int pc_MAX_Real_Long_REG :: Int pc_RESERVED_C_STACK_BYTES :: Int pc_RESERVED_STACK_WORDS :: Int pc_AP_STACK_SPLIM :: Int pc_WORD_SIZE :: Int pc_CINT_SIZE :: Int pc_CLONG_SIZE :: Int pc_CLONG_LONG_SIZE :: Int pc_BITMAP_BITS_SHIFT :: Int pc_TAG_BITS :: Int pc_DYNAMIC_BY_DEFAULT :: Bool pc_LDV_SHIFT :: Int pc_ILDV_CREATE_MASK :: Integer pc_ILDV_STATE_CREATE :: Integer pc_ILDV_STATE_USE :: Integer

#### Instances

Instances details

Read PlatformConstants # |
Instance details Defined in GHC.Settings Methods readsPrec :: Int -> ReadS PlatformConstants Source # readList :: ReadS [PlatformConstants] Source # readPrec :: ReadPrec PlatformConstants Source # readListPrec :: ReadPrec [PlatformConstants] Source #

data Platform Source #

Contains enough information for the native code generator to emit code for this platform.

Constructors

Platform |
Fields platformMini :: !PlatformMini platformWordSize :: !PlatformWordSize Word size platformByteOrder :: !ByteOrder Byte order (endianness) platformUnregisterised :: !Bool platformHasGnuNonexecStack :: !Bool platformHasIdentDirective :: !Bool platformHasSubsectionsViaSymbols :: !Bool platformIsCrossCompiling :: !Bool platformLeadingUnderscore :: !Bool Symbols need underscore prefix platformTablesNextToCode :: !Bool Determines whether we will be compiling info tables that reside just before the entry code, or with an indirection to the entry code. See TABLES_NEXT_TO_CODE in includesrtsstorage/InfoTables.h.

#### Instances

Instances details

Eq Platform |
Instance details Defined in GHC.Platform Methods (==) :: Platform -> Platform -> Bool # (/=) :: Platform -> Platform -> Bool #
Read Platform |
Instance details Defined in GHC.Platform Methods readsPrec :: Int -> ReadS Platform Source # readList :: ReadS [Platform] Source # readPrec :: ReadPrec Platform Source # readListPrec :: ReadPrec [Platform] Source #
Show Platform |
Instance details Defined in GHC.Platform Methods showsPrec :: Int -> Platform -> ShowS Source # show :: Platform -> String Source # showList :: [Platform] -> ShowS Source #

data PlatformMisc Source #

Platform-specific settings formerly hard-coded in Config.hs.

These should probably be all be triaged whether they can be computed from other settings or belong in another another place (like `Platform` above).

Constructors

PlatformMisc |
Fields platformMisc_targetPlatformString :: String platformMisc_ghcWithInterpreter :: Bool platformMisc_ghcWithSMP :: Bool platformMisc_ghcRTSWays :: String platformMisc_libFFI :: Bool platformMisc_ghcThreaded :: Bool platformMisc_ghcDebugged :: Bool platformMisc_ghcRtsWithLibdw :: Bool platformMisc_llvmTarget :: String

data PlatformMini Source #

Contains the bare-bones arch and os information. This isn't enough for code gen, but useful for tasks where we can fall back upon the host platform, as this is all we know about the host platform.

Constructors

PlatformMini |
Fields platformMini_arch :: Arch platformMini_os :: OS

#### Instances

Instances details

Eq PlatformMini |
Instance details Defined in GHC.Platform Methods (==) :: PlatformMini -> PlatformMini -> Bool # (/=) :: PlatformMini -> PlatformMini -> Bool #
Read PlatformMini |
Instance details Defined in GHC.Platform Methods readsPrec :: Int -> ReadS PlatformMini Source # readList :: ReadS [PlatformMini] Source # readPrec :: ReadPrec PlatformMini Source # readListPrec :: ReadPrec [PlatformMini] Source #
Show PlatformMini |
Instance details Defined in GHC.Platform Methods showsPrec :: Int -> PlatformMini -> ShowS Source # show :: PlatformMini -> String Source # showList :: [PlatformMini] -> ShowS Source #

# Accessors

sProgramName :: Settings -> String Source #

sProjectVersion :: Settings -> String Source #

sGhcUsagePath :: Settings -> FilePath Source #

sGhciUsagePath :: Settings -> FilePath Source #

sToolDir :: Settings -> Maybe FilePath Source #

sTopDir :: Settings -> FilePath Source #

sTmpDir :: Settings -> String Source #

sGlobalPackageDatabasePath :: Settings -> FilePath Source #

sLdSupportsCompactUnwind :: Settings -> Bool Source #

sLdSupportsBuildId :: Settings -> Bool Source #

sLdSupportsFilelist :: Settings -> Bool Source #

sLdIsGnuLd :: Settings -> Bool Source #

sGccSupportsNoPie :: Settings -> Bool Source #

sPgm_L :: Settings -> String Source #

sPgm_P :: Settings -> (String, [Option]) Source #

sPgm_F :: Settings -> String Source #

sPgm_c :: Settings -> String Source #

sPgm_a :: Settings -> (String, [Option]) Source #

sPgm_l :: Settings -> (String, [Option]) Source #

sPgm_lm :: Settings -> (String, [Option]) Source #

sPgm_dll :: Settings -> (String, [Option]) Source #

sPgm_T :: Settings -> String Source #

sPgm_windres :: Settings -> String Source #

sPgm_libtool :: Settings -> String Source #

sPgm_ar :: Settings -> String Source #

sPgm_otool :: Settings -> String Source #

sPgm_install_name_tool :: Settings -> String Source #

sPgm_ranlib :: Settings -> String Source #

sPgm_lo :: Settings -> (String, [Option]) Source #

sPgm_lc :: Settings -> (String, [Option]) Source #

sPgm_lcc :: Settings -> (String, [Option]) Source #

sPgm_i :: Settings -> String Source #

sOpt_L :: Settings -> [String] Source #

sOpt_P :: Settings -> [String] Source #

sOpt_P_fingerprint :: Settings -> Fingerprint Source #

sOpt_F :: Settings -> [String] Source #

sOpt_c :: Settings -> [String] Source #

sOpt_cxx :: Settings -> [String] Source #

sOpt_a :: Settings -> [String] Source #

sOpt_l :: Settings -> [String] Source #

sOpt_lm :: Settings -> [String] Source #

sOpt_windres :: Settings -> [String] Source #

sOpt_lo :: Settings -> [String] Source #

sOpt_lc :: Settings -> [String] Source #

sOpt_lcc :: Settings -> [String] Source #

sOpt_i :: Settings -> [String] Source #

sExtraGccViaCFlags :: Settings -> [String] Source #

sTargetPlatformString :: Settings -> String Source #

sGhcWithInterpreter :: Settings -> Bool Source #

sGhcWithSMP :: Settings -> Bool Source #

sGhcRTSWays :: Settings -> String Source #

sLibFFI :: Settings -> Bool Source #

sGhcThreaded :: Settings -> Bool Source #

sGhcDebugged :: Settings -> Bool Source #

sGhcRtsWithLibdw :: Settings -> Bool Source #