X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=rts%2FInterpreter.c;h=9071912f2de991f50b1a4db3e91e1d902181fc92;hb=cfdf2515dd5b491f8229d44b98fa33adeeac7e60;hp=5197510766395613e0dcb6b43656c3938b448097;hpb=5270423a6afe69f1dc57e5e5a474812182718d40;p=ghc-hetmet.git diff --git a/rts/Interpreter.c b/rts/Interpreter.c index 5197510..9071912 100644 --- a/rts/Interpreter.c +++ b/rts/Interpreter.c @@ -11,10 +11,10 @@ // internal headers #include "sm/Storage.h" +#include "sm/Sanity.h" #include "RtsUtils.h" #include "Schedule.h" #include "Updates.h" -#include "Sanity.h" #include "Prelude.h" #include "Stable.h" #include "Printer.h" @@ -269,7 +269,8 @@ eval_obj: debugBelch("\n\n"); ); - IF_DEBUG(sanity,checkStackChunk(Sp, cap->r.rCurrentTSO->stack+cap->r.rCurrentTSO->stack_size)); +// IF_DEBUG(sanity,checkStackChunk(Sp, cap->r.rCurrentTSO->stack+cap->r.rCurrentTSO->stack_size)); + IF_DEBUG(sanity,checkStackFrame(Sp)); switch ( get_itbl(obj)->type ) { @@ -442,7 +443,7 @@ do_return: // to a PAP by the GC, violating the invariant that PAPs // always contain a tagged pointer to the function. INTERP_TICK(it_retto_UPDATE); - UPD_IND(((StgUpdateFrame *)Sp)->updatee, tagged_obj); + UPD_IND(cap, ((StgUpdateFrame *)Sp)->updatee, tagged_obj); Sp += sizeofW(StgUpdateFrame); goto do_return;