ghc-9.6.3: The GHC API

Safe Haskell | Safe-Inferred
Language | Haskell2010

GHC.Cmm.Config

Description

Cmm compilation configuration

Synopsis

- data CmmConfig = CmmConfig {
  - cmmProfile :: !Profile
  - cmmOptControlFlow :: !Bool
  - cmmDoLinting :: !Bool
  - cmmOptElimCommonBlks :: !Bool
  - cmmOptSink :: !Bool
  - cmmOptThreadSanitizer :: !Bool
  - cmmGenStackUnwindInstr :: !Bool
  - cmmExternalDynamicRefs :: !Bool
  - cmmDoCmmSwitchPlans :: !Bool
  - cmmSplitProcPoints :: !Bool
  }
- cmmPlatform :: CmmConfig -> Platform

# Documentation

data CmmConfig Source #

Constructors

CmmConfig |

Fields

- cmmProfile :: !Profile

  Target Profile

- cmmOptControlFlow :: !Bool

  Optimize Cmm Control Flow or not

- cmmDoLinting :: !Bool

  Do Cmm Linting Optimization or not

- cmmOptElimCommonBlks :: !Bool

  Eliminate common blocks or not

- cmmOptSink :: !Bool

  Perform sink after stack layout or not

- cmmOptThreadSanitizer :: !Bool

  Instrument memory accesses for ThreadSanitizer

- cmmGenStackUnwindInstr :: !Bool

  Generate stack unwinding instructions (for debugging)

- cmmExternalDynamicRefs :: !Bool

  Generate code to link against dynamic libraries

- cmmDoCmmSwitchPlans :: !Bool

  Should the Cmm pass replace Stg switch statements

- cmmSplitProcPoints :: !Bool

  Should Cmm split proc points or not

cmmPlatform :: CmmConfig -> Platform Source #

retrieve the target Cmm platform