X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Frts%2FStgStdThunks.hc;h=bd2b652d739b521ba124bc26924bc215017fd798;hb=8813f77032fc4898a908fa63f75e21de32a0b072;hp=35a75c1afe06f84389d16ab4cfa8a4b2d831c063;hpb=94c6e199d613c291a977830984c45ca079064219;p=ghc-hetmet.git diff --git a/ghc/rts/StgStdThunks.hc b/ghc/rts/StgStdThunks.hc index 35a75c1..bd2b652 100644 --- a/ghc/rts/StgStdThunks.hc +++ b/ghc/rts/StgStdThunks.hc @@ -1,5 +1,5 @@ /* ----------------------------------------------------------------------------- - * $Id: StgStdThunks.hc,v 1.6 1999/05/13 17:31:13 simonm Exp $ + * $Id: StgStdThunks.hc,v 1.7 1999/06/29 12:00:42 simonmar Exp $ * * (c) The GHC Team, 1998-1999 * @@ -39,9 +39,9 @@ #endif #define SELECTOR_CODE_UPD(offset) \ - IF_(__sel_ret_##offset##_upd_ret); \ - INFO_TABLE_SRT_BITMAP(__sel_ret_##offset##_upd_info,__sel_ret_##offset##_upd_ret, RET_BITMAP, 0, 0, 0, RET_SMALL, static, IF_, 0, 0); \ - IF_(__sel_ret_##offset##_upd_ret) { \ + EF_(__sel_ret_##offset##_upd_ret); \ + INFO_TABLE_SRT_BITMAP(__sel_ret_##offset##_upd_info,__sel_ret_##offset##_upd_ret, RET_BITMAP, 0, 0, 0, RET_SMALL, static, EF_, 0, 0); \ + EF_(__sel_ret_##offset##_upd_ret) { \ FB_ \ R1.p=(P_)R1.cl->payload[offset]; \ GET_SAVED_CCCS; \ @@ -84,9 +84,8 @@ SELECTOR_CODE_UPD(14); SELECTOR_CODE_UPD(15); #define SELECTOR_CODE_NOUPD(offset) \ - IF_(__sel_ret_##offset##_noupd_ret); \ - INFO_TABLE_SRT_BITMAP(__sel_ret_##offset##_noupd_info, __sel_ret_##offset##_noupd_ret, RET_BITMAP, 0, 0, 0, RET_SMALL, static, IF_, 0, 0); \ - IF_(__sel_ret_##offset##_noupd_ret) { \ + INFO_TABLE_SRT_BITMAP(__sel_ret_##offset##_noupd_info, __sel_ret_##offset##_noupd_ret, RET_BITMAP, 0, 0, 0, RET_SMALL, static, EF_, 0, 0); \ + EF_(__sel_ret_##offset##_noupd_ret) { \ FB_ \ R1.p=(P_)R1.cl->payload[offset]; \ GET_SAVED_CCCS; \ @@ -102,7 +101,7 @@ SELECTOR_CODE_UPD(15); STK_CHK_NP(NOUPD_FRAME_SIZE,1,) \ ENTER_CCS(R1.p); \ SAVE_CCCS(NOUPD_FRAME_SIZE); \ - Sp[-NOUPD_FRAME_SIZE]=(W_)__sel_ret_##offset##_noupd_ret; \ + Sp[-NOUPD_FRAME_SIZE]=(W_)&__sel_ret_##offset##_noupd_info; \ R1.p = (P_)R1.cl->payload[0]; \ Sp=Sp-NOUPD_FRAME_SIZE; \ JMP_(ENTRY_CODE(*R1.p)); \