Alex Ferguson writes:
> 
> Yes, and no.  I reported my inability to get conc and prof to work together
> on _either_ 0.29 or 2.01, quite a while ago.  WDP said the latter likely
> hadn't been made to work at all; I got no real feedback on the former,
> so I gave up on both.
> 

Fixed in 2.02, I'm afraid it never worked properly (0.29/2.01). For
people with sources that likes to patch, I've appended the diffs.

--Sigbjorn 


*** ghc/runtime/main/Threads.lc.~1~     Thu Aug 22 14:22:30 1996
--- ghc/runtime/main/Threads.lc         Mon Mar 10 15:41:55 1997
***************
*** 2423,2428 ****
  #if defined(GRAN)
      TSO_PRI(tso) =  pri;                  /* Priority of that TSO -- HWL */
  #endif 
! #ifdef PAR
      TSO_CCC(tso) = (CostCentre)STATIC_CC_REF(CC_MAIN);
  #endif
      TSO_NAME(tso) = (P_) INFO_PTR(topClosure); /* A string would be nicer -- JSM */
--- 2418,2428 ----
  #if defined(GRAN)
      TSO_PRI(tso) =  pri;                  /* Priority of that TSO -- HWL */
  #endif 
! #if defined(PROFILING) || defined(PAR)
      TSO_CCC(tso) = (CostCentre)STATIC_CC_REF(CC_MAIN);
  #endif
      TSO_NAME(tso) = (P_) INFO_PTR(topClosure); /* A string would be nicer -- JSM */

*** ghc/includes/StgRegs.lh.~1~ Thu Aug 22 14:20:26 1996
--- ghc/includes/StgRegs.lh     Mon Mar 10 15:14:55 1997
***************
*** 140,146 ****
  {
      SaveAllStgRegs(); 
  #ifdef CONCURRENT
! # ifdef PAR
      TSO_CCC(CurrentTSO) = CCC;
      CCC = (CostCentre)STATIC_CC_REF(CC_MAIN);
  # endif
--- 140,146 ----
  {
      SaveAllStgRegs(); 
  #ifdef CONCURRENT
! # if defined(PROFILING) || defined(PAR)
      TSO_CCC(CurrentTSO) = CCC;
      CCC = (CostCentre)STATIC_CC_REF(CC_MAIN);
  # endif
***************
*** 279,286 ****
      StkStubReg = STK_STUB_closure;
  #endif
  
! #ifdef PAR
      CCC = TSO_CCC(CurrentTSO);
  #endif
  }
  
--- 279,288 ----
      StkStubReg = STK_STUB_closure;
  #endif
  
! #if CONCURRENT
! # if defined(PROFILING) || defined(PAR)
      CCC = TSO_CCC(CurrentTSO);
+ # endif
  #endif
  }

Reply via email to