Adding pushing of hpc translation status through hi files.
[ghc-hetmet.git] / compiler / codeGen / CodeGen.lhs
index 3b7fc0a..863d29e 100644 (file)
@@ -152,7 +152,7 @@ mkModuleInit dflags way cost_centre_info this_mod main_mod foreign_stubs importe
          emitData Data [CmmDataLabel moduleRegdLabel, 
                         CmmStaticLit zeroCLit]
 
-        ; whenC (dopt Opt_Hpc dflags) $
+        ; whenC (opt_Hpc) $
               hpcTable this_mod hpc_info
 
           -- we emit a recursive descent module search for all modules
@@ -210,7 +210,7 @@ mkModuleInit dflags way cost_centre_info this_mod main_mod foreign_stubs importe
         ; whenC (opt_SccProfilingOn) $ do 
            initCostCentres cost_centre_info
 
-        ; whenC (dopt Opt_Hpc dflags) $
+        ; whenC (opt_Hpc) $
             initHpc this_mod hpc_info
          
        ; mapCs (registerModuleImport this_pkg way) 
@@ -224,7 +224,7 @@ mkModuleInit dflags way cost_centre_info this_mod main_mod foreign_stubs importe
                       , CmmJump (CmmLoad (cmmRegOffW spReg (-1)) wordRep) [] ]
 
 
-    rec_descent_init = if opt_SccProfilingOn || dopt Opt_Hpc dflags
+    rec_descent_init = if opt_SccProfilingOn || isHpcUsed hpc_info
                       then jump_to_init
                       else ret_code
 
@@ -323,8 +323,9 @@ cgTopRhs bndr (StgRhsCon cc con args)
 
 cgTopRhs bndr (StgRhsClosure cc bi fvs upd_flag srt args body)
   = ASSERT(null fvs)    -- There should be no free variables
-    setSRTLabel (mkSRTLabel (idName bndr)) $ 
-    forkStatics (cgTopRhsClosure bndr cc bi srt upd_flag args body)
+    setSRTLabel (mkSRTLabel (idName bndr)) $
+    setSRT srt $
+    forkStatics (cgTopRhsClosure bndr cc bi upd_flag args body)
 \end{code}
 
 
@@ -350,7 +351,7 @@ maybeExternaliseId dflags id
     name    = idName id
     uniq    = nameUnique name
     new_occ = mkLocalOcc uniq (nameOccName name)
-    loc     = nameSrcLoc name
+    loc     = nameSrcSpan name
        -- We want to conjure up a name that can't clash with any
        -- existing name.  So we generate
        --      Mod_$L243foo