- let ext_tick_box = CmmLit $ CmmLabel $ mkHpcModuleOffsetLabel $ mod
-
- whenC (opt_Hpc_Tracer) $ do
- emitForeignCall'
- PlayRisky -- ??
- []
- (CmmForeignCall
- (CmmLit $ CmmLabel $ mkForeignLabel visible_tick Nothing False)
- CCallConv
- )
- [ (CmmMachOp (MO_Add I32)
- [ CmmLoad ext_tick_box I32
- , CmmLit (CmmInt (fromIntegral n) I32)
- ]
- , NoHint)
- , ( CmmReg (CmmGlobal CurrentTSO)
- , PtrHint
- )
- ]
- (Just [])
- where
- visible_tick = mkFastString "hs_hpc_tick"