From: sewardj Date: Tue, 19 Dec 2000 12:34:01 +0000 (+0000) Subject: [project @ 2000-12-19 12:34:00 by sewardj] X-Git-Tag: Approximately_9120_patches~3062 X-Git-Url: http://git.megacz.com/?a=commitdiff_plain;h=f30be2dcc16a3dae31dc8b3f923c8861c5d26fa0;p=ghc-hetmet.git [project @ 2000-12-19 12:34:00 by sewardj] tweaks to BCO infrastructure --- diff --git a/ghc/includes/Closures.h b/ghc/includes/Closures.h index dead7d2..497fc82 100644 --- a/ghc/includes/Closures.h +++ b/ghc/includes/Closures.h @@ -1,5 +1,5 @@ /* ---------------------------------------------------------------------------- - * $Id: Closures.h,v 1.22 2000/12/15 10:37:51 sewardj Exp $ + * $Id: Closures.h,v 1.23 2000/12/19 12:34:00 sewardj Exp $ * * (c) The GHC Team, 1998-1999 * @@ -176,8 +176,8 @@ typedef struct { typedef struct { StgHeader header; - StgClosure *literals; /* a pointer to an ArrWords */ StgClosure *instrs; /* a pointer to an ArrWords */ + StgClosure *literals; /* a pointer to an ArrWords */ StgClosure *ptrs; /* a pointer to a MutArrPtrs */ StgClosure *itbls; /* a pointer to an ArrWords */ } StgBCO; diff --git a/ghc/rts/PrimOps.hc b/ghc/rts/PrimOps.hc index 58e95f1..2d27886 100644 --- a/ghc/rts/PrimOps.hc +++ b/ghc/rts/PrimOps.hc @@ -1,5 +1,5 @@ /* ----------------------------------------------------------------------------- - * $Id: PrimOps.hc,v 1.63 2000/12/12 12:19:57 simonmar Exp $ + * $Id: PrimOps.hc,v 1.64 2000/12/19 12:34:01 sewardj Exp $ * * (c) The GHC Team, 1998-2000 * @@ -1021,20 +1021,21 @@ FN_(newBCOzh_fast) /* R1.p = instrs R2.p = literals R3.p = ptrs + R4.p = itbls */ StgBCO *bco; FB_ - HP_CHK_GEN_TICKY(sizeofW(StgBCO),R1_PTR|R2_PTR|R3_PTR, newBCOzh_fast,); + HP_CHK_GEN_TICKY(sizeofW(StgBCO),R1_PTR|R2_PTR|R3_PTR|R4_PTR, newBCOzh_fast,); TICK_ALLOC_PRIM(sizeofW(StgHeader), sizeofW(StgBCO)-sizeofW(StgHeader), 0); CCS_ALLOC(CCCS,sizeofW(StgBCO)); /* ccs prof */ - - bco = (StgBCO *) (Hp + 1 - sizeof(StgBCO)); + bco = (StgBCO *) (Hp + 1 - sizeofW(StgBCO)); SET_HDR(bco, &stg_BCO_info, CCCS); bco->instrs = R1.cl; bco->literals = R2.cl; bco->ptrs = R3.cl; + bco->itbls = R4.cl; TICK_RET_UNBOXED_TUP(1); RET_P(bco);