Commit 8ec3d0f1 authored by sof's avatar sof
Browse files

[project @ 2001-12-10 18:06:50 by sof]

bdescr's back field is now inside a union
parent 0d1a15fd
/* -----------------------------------------------------------------------------
* $Id: StgMacros.h,v 1.44 2001/12/10 17:55:40 sewardj Exp $
* $Id: StgMacros.h,v 1.45 2001/12/10 18:06:50 sof Exp $
*
* (c) The GHC Team, 1998-1999
*
......@@ -410,8 +410,8 @@ EXTINFO_RTS(stg_gen_chk_info);
TICK_UPD_BH_UPDATABLE(); \
{ \
bdescr *bd = Bdescr(R1.p); \
if (bd->back != (bdescr *)BaseReg) { \
if (bd->gen->no >= 1 || bd->step->no >= 1) { \
if (bd->u.back != (bdescr *)BaseReg) { \
if (bd->gen_no >= 1 || bd->step->no >= 1) { \
LOCK_THUNK(info); \
} else { \
EXTFUN_RTS(stg_gc_enter_1_hponly); \
......@@ -424,8 +424,8 @@ EXTINFO_RTS(stg_gen_chk_info);
TICK_UPD_BH_SINGLE_ENTRY(); \
{ \
bdescr *bd = Bdescr(R1.p); \
if (bd->back != (bdescr *)BaseReg) { \
if (bd->gen->no >= 1 || bd->step->no >= 1) { \
if (bd->u.back != (bdescr *)BaseReg) { \
if (bd->gen_no >= 1 || bd->step->no >= 1) { \
LOCK_THUNK(info); \
} else { \
EXTFUN_RTS(stg_gc_enter_1_hponly); \
......
/* -----------------------------------------------------------------------------
* $Id: Updates.h,v 1.26 2001/11/22 14:25:12 simonmar Exp $
* $Id: Updates.h,v 1.27 2001/12/10 18:07:09 sof Exp $
*
* (c) The GHC Team, 1998-1999
*
......@@ -39,7 +39,7 @@
#define UPD_REAL_IND(updclosure, heapptr) \
{ \
const StgInfoTable *info; \
if (Bdescr((P_)updclosure)->back != (bdescr *)BaseReg) { \
if (Bdescr((P_)updclosure)->u.back != (bdescr *)BaseReg) { \
info = LOCK_CLOSURE(updclosure); \
} else { \
info = updclosure->header.info; \
......
/* -----------------------------------------------------------------------------
* $Id: StgMiscClosures.hc,v 1.70 2001/11/22 14:25:12 simonmar Exp $
* $Id: StgMiscClosures.hc,v 1.71 2001/12/10 18:07:35 sof Exp $
*
* (c) The GHC Team, 1998-2000
*
......@@ -423,8 +423,8 @@ STGFUN(stg_BLACKHOLE_entry)
#ifdef SMP
{
bdescr *bd = Bdescr(R1.p);
if (bd->back != (bdescr *)BaseReg) {
if (bd->gen->no >= 1 || bd->step->no >= 1) {
if (bd->u.back != (bdescr *)BaseReg) {
if (bd->gen_no >= 1 || bd->step->no >= 1) {
CMPXCHG(R1.cl->header.info, &stg_BLACKHOLE_info, &stg_WHITEHOLE_info);
} else {
EXTFUN_RTS(stg_gc_enter_1_hponly);
......@@ -487,8 +487,8 @@ STGFUN(stg_BLACKHOLE_BQ_entry)
#ifdef SMP
{
bdescr *bd = Bdescr(R1.p);
if (bd->back != (bdescr *)BaseReg) {
if (bd->gen->no >= 1 || bd->step->no >= 1) {
if (bd->u.back != (bdescr *)BaseReg) {
if (bd->gen_no >= 1 || bd->step->no >= 1) {
CMPXCHG(R1.cl->header.info, &stg_BLACKHOLE_info, &stg_WHITEHOLE_info);
} else {
EXTFUN_RTS(stg_gc_enter_1_hponly);
......@@ -579,7 +579,7 @@ STGFUN(stg_CAF_BLACKHOLE_entry)
#ifdef SMP
{
bdescr *bd = Bdescr(R1.p);
if (bd->back != (bdescr *)BaseReg) {
if (bd->u.back != (bdescr *)BaseReg) {
if (bd->gen_no >= 1 || bd->step->no >= 1) {
CMPXCHG(R1.cl->header.info, &stg_CAF_BLACKHOLE_info, &stg_WHITEHOLE_info);
} else {
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment