summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
8013990)
Add some missing ticky macros.
/* -----------------------------------------------------------------------------
/* -----------------------------------------------------------------------------
- * $Id: StgStdThunks.hc,v 1.7 1999/06/29 12:00:42 simonmar Exp $
+ * $Id: StgStdThunks.hc,v 1.8 1999/10/21 09:18:02 simonmar Exp $
*
* (c) The GHC Team, 1998-1999
*
*
* (c) The GHC Team, 1998-1999
*
R1.p=(P_)R1.cl->payload[offset]; \
GET_SAVED_CCCS; \
Sp=Sp+sizeofW(StgHeader); \
R1.p=(P_)R1.cl->payload[offset]; \
GET_SAVED_CCCS; \
Sp=Sp+sizeofW(StgHeader); \
JMP_(ENTRY_CODE(*R1.p)); \
FE_ \
} \
JMP_(ENTRY_CODE(*R1.p)); \
FE_ \
} \
INFO_TABLE_SELECTOR(__sel_##offset##_upd_info, __sel_##offset##_upd_entry, offset,, EF_, 0,0);\
EF_(__sel_##offset##_upd_entry) { \
FB_ \
INFO_TABLE_SELECTOR(__sel_##offset##_upd_info, __sel_##offset##_upd_entry, offset,, EF_, 0,0);\
EF_(__sel_##offset##_upd_entry) { \
FB_ \
STK_CHK_NP(UPD_FRAME_SIZE,1,); \
UPD_BH_UPDATABLE(R1.p); \
PUSH_UPD_FRAME(R1.p,0); \
STK_CHK_NP(UPD_FRAME_SIZE,1,); \
UPD_BH_UPDATABLE(R1.p); \
PUSH_UPD_FRAME(R1.p,0); \
Sp[-UPD_FRAME_SIZE]=(W_)&__sel_ret_##offset##_upd_info; \
R1.p = (P_)R1.cl->payload[0]; \
Sp=Sp-UPD_FRAME_SIZE; \
Sp[-UPD_FRAME_SIZE]=(W_)&__sel_ret_##offset##_upd_info; \
R1.p = (P_)R1.cl->payload[0]; \
Sp=Sp-UPD_FRAME_SIZE; \
JMP_(ENTRY_CODE(*R1.p)); \
FE_ \
}
JMP_(ENTRY_CODE(*R1.p)); \
FE_ \
}
R1.p=(P_)R1.cl->payload[offset]; \
GET_SAVED_CCCS; \
Sp=Sp+sizeofW(StgHeader); \
R1.p=(P_)R1.cl->payload[offset]; \
GET_SAVED_CCCS; \
Sp=Sp+sizeofW(StgHeader); \
JMP_(ENTRY_CODE(*R1.p)); \
FE_ \
} \
JMP_(ENTRY_CODE(*R1.p)); \
FE_ \
} \
INFO_TABLE_SELECTOR(__sel_##offset##_noupd_info, __sel_##offset##_noupd_entry, offset,, EF_, 0,0);\
EF_(__sel_##offset##_noupd_entry) { \
FB_ \
INFO_TABLE_SELECTOR(__sel_##offset##_noupd_info, __sel_##offset##_noupd_entry, offset,, EF_, 0,0);\
EF_(__sel_##offset##_noupd_entry) { \
FB_ \
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_info; \
R1.p = (P_)R1.cl->payload[0]; \
Sp=Sp-NOUPD_FRAME_SIZE; \
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_info; \
R1.p = (P_)R1.cl->payload[0]; \
Sp=Sp-NOUPD_FRAME_SIZE; \
JMP_(ENTRY_CODE(*R1.p)); \
FE_ \
}
JMP_(ENTRY_CODE(*R1.p)); \
FE_ \
}
INFO_TABLE_SRT(__ap_1_upd_info,__ap_1_upd_entry,1,0,0,0,0,THUNK,,EF_,0,0);
FN_(__ap_1_upd_entry) {
FB_
INFO_TABLE_SRT(__ap_1_upd_info,__ap_1_upd_entry,1,0,0,0,0,THUNK,,EF_,0,0);
FN_(__ap_1_upd_entry) {
FB_
STK_CHK_NP(sizeofW(StgUpdateFrame),1,);
UPD_BH_UPDATABLE(R1.p);
ENTER_CCS(R1.p);
PUSH_UPD_FRAME(R1.p,0);
R1.p=(P_)(R1.cl->payload[0]);
Sp = Sp - sizeofW(StgUpdateFrame);
STK_CHK_NP(sizeofW(StgUpdateFrame),1,);
UPD_BH_UPDATABLE(R1.p);
ENTER_CCS(R1.p);
PUSH_UPD_FRAME(R1.p,0);
R1.p=(P_)(R1.cl->payload[0]);
Sp = Sp - sizeofW(StgUpdateFrame);
JMP_(ENTRY_CODE(*R1.p));
FE_
}
JMP_(ENTRY_CODE(*R1.p));
FE_
}
INFO_TABLE_SRT(__ap_2_upd_info,__ap_2_upd_entry,2,0,0,0,0,THUNK,,EF_,0,0);
FN_(__ap_2_upd_entry) {
FB_
INFO_TABLE_SRT(__ap_2_upd_info,__ap_2_upd_entry,2,0,0,0,0,THUNK,,EF_,0,0);
FN_(__ap_2_upd_entry) {
FB_
STK_CHK_NP(sizeofW(StgUpdateFrame)+1,1,);
UPD_BH_UPDATABLE(R1.p);
ENTER_CCS(R1.p);
STK_CHK_NP(sizeofW(StgUpdateFrame)+1,1,);
UPD_BH_UPDATABLE(R1.p);
ENTER_CCS(R1.p);
Sp[-UF_SIZE-1]=(W_)(R1.cl->payload[1]);
R1.p=(P_)(R1.cl->payload[0]);
Sp = Sp - (sizeofW(StgUpdateFrame)+1);
Sp[-UF_SIZE-1]=(W_)(R1.cl->payload[1]);
R1.p=(P_)(R1.cl->payload[0]);
Sp = Sp - (sizeofW(StgUpdateFrame)+1);
JMP_(ENTRY_CODE(*R1.p));
FE_
}
JMP_(ENTRY_CODE(*R1.p));
FE_
}
INFO_TABLE_SRT(__ap_3_upd_info,__ap_3_upd_entry,3,0,0,0,0,THUNK,,EF_,0,0);
FN_(__ap_3_upd_entry) {
FB_
INFO_TABLE_SRT(__ap_3_upd_info,__ap_3_upd_entry,3,0,0,0,0,THUNK,,EF_,0,0);
FN_(__ap_3_upd_entry) {
FB_
STK_CHK_NP(sizeofW(StgUpdateFrame)+2,1,);
UPD_BH_UPDATABLE(R1.p);
ENTER_CCS(R1.p);
STK_CHK_NP(sizeofW(StgUpdateFrame)+2,1,);
UPD_BH_UPDATABLE(R1.p);
ENTER_CCS(R1.p);
Sp[-UF_SIZE-2]=(W_)(R1.cl->payload[1]);
R1.p=(P_)(R1.cl->payload[0]);
Sp = Sp - (sizeofW(StgUpdateFrame)+2);
Sp[-UF_SIZE-2]=(W_)(R1.cl->payload[1]);
R1.p=(P_)(R1.cl->payload[0]);
Sp = Sp - (sizeofW(StgUpdateFrame)+2);
JMP_(ENTRY_CODE(*R1.p));
FE_
}
JMP_(ENTRY_CODE(*R1.p));
FE_
}
INFO_TABLE_SRT(__ap_4_upd_info,__ap_4_upd_entry,4,0,0,0,0,THUNK,,EF_,0,0);
FN_(__ap_4_upd_entry) {
FB_
INFO_TABLE_SRT(__ap_4_upd_info,__ap_4_upd_entry,4,0,0,0,0,THUNK,,EF_,0,0);
FN_(__ap_4_upd_entry) {
FB_
STK_CHK_NP(sizeofW(StgUpdateFrame)+3,1,);
UPD_BH_UPDATABLE(R1.p);
ENTER_CCS(R1.p);
STK_CHK_NP(sizeofW(StgUpdateFrame)+3,1,);
UPD_BH_UPDATABLE(R1.p);
ENTER_CCS(R1.p);
Sp[-UF_SIZE-3]=(W_)(R1.cl->payload[1]);
R1.p=(P_)(R1.cl->payload[0]);
Sp = Sp - (sizeofW(StgUpdateFrame)+3);
Sp[-UF_SIZE-3]=(W_)(R1.cl->payload[1]);
R1.p=(P_)(R1.cl->payload[0]);
Sp = Sp - (sizeofW(StgUpdateFrame)+3);
JMP_(ENTRY_CODE(*R1.p));
FE_
}
JMP_(ENTRY_CODE(*R1.p));
FE_
}
INFO_TABLE_SRT(__ap_5_upd_info,__ap_5_upd_entry,5,0,0,0,0,THUNK,,EF_,0,0);
FN_(__ap_5_upd_entry) {
FB_
INFO_TABLE_SRT(__ap_5_upd_info,__ap_5_upd_entry,5,0,0,0,0,THUNK,,EF_,0,0);
FN_(__ap_5_upd_entry) {
FB_
STK_CHK_NP(sizeofW(StgUpdateFrame)+4,1,);
UPD_BH_UPDATABLE(R1.p);
ENTER_CCS(R1.p);
STK_CHK_NP(sizeofW(StgUpdateFrame)+4,1,);
UPD_BH_UPDATABLE(R1.p);
ENTER_CCS(R1.p);
Sp[-UF_SIZE-4]=(W_)(R1.cl->payload[1]);
R1.p=(P_)(R1.cl->payload[0]);
Sp = Sp - (sizeofW(StgUpdateFrame)+4);
Sp[-UF_SIZE-4]=(W_)(R1.cl->payload[1]);
R1.p=(P_)(R1.cl->payload[0]);
Sp = Sp - (sizeofW(StgUpdateFrame)+4);
JMP_(ENTRY_CODE(*R1.p));
FE_
}
JMP_(ENTRY_CODE(*R1.p));
FE_
}
INFO_TABLE_SRT(__ap_6_upd_info,__ap_6_upd_entry,6,0,0,0,0,THUNK,,EF_,0,0);
FN_(__ap_6_upd_entry) {
FB_
INFO_TABLE_SRT(__ap_6_upd_info,__ap_6_upd_entry,6,0,0,0,0,THUNK,,EF_,0,0);
FN_(__ap_6_upd_entry) {
FB_
STK_CHK_NP(sizeofW(StgUpdateFrame)+5,1,);
UPD_BH_UPDATABLE(R1.p);
ENTER_CCS(R1.p);
STK_CHK_NP(sizeofW(StgUpdateFrame)+5,1,);
UPD_BH_UPDATABLE(R1.p);
ENTER_CCS(R1.p);
Sp[-UF_SIZE-5]=(W_)(R1.cl->payload[1]);
R1.p=(P_)(R1.cl->payload[0]);
Sp = Sp - (sizeofW(StgUpdateFrame)+5);
Sp[-UF_SIZE-5]=(W_)(R1.cl->payload[1]);
R1.p=(P_)(R1.cl->payload[0]);
Sp = Sp - (sizeofW(StgUpdateFrame)+5);
JMP_(ENTRY_CODE(*R1.p));
FE_
}
JMP_(ENTRY_CODE(*R1.p));
FE_
}
INFO_TABLE_SRT(__ap_7_upd_info,__ap_7_upd_entry,7,0,0,0,0,THUNK,,EF_,0,0);
FN_(__ap_7_upd_entry) {
FB_
INFO_TABLE_SRT(__ap_7_upd_info,__ap_7_upd_entry,7,0,0,0,0,THUNK,,EF_,0,0);
FN_(__ap_7_upd_entry) {
FB_
STK_CHK_NP(sizeofW(StgUpdateFrame)+6,1,);
UPD_BH_UPDATABLE(R1.p);
ENTER_CCS(R1.p);
STK_CHK_NP(sizeofW(StgUpdateFrame)+6,1,);
UPD_BH_UPDATABLE(R1.p);
ENTER_CCS(R1.p);
Sp[-UF_SIZE-6]=(W_)(R1.cl->payload[1]);
R1.p=(P_)(R1.cl->payload[0]);
Sp = Sp - (sizeofW(StgUpdateFrame)+6);
Sp[-UF_SIZE-6]=(W_)(R1.cl->payload[1]);
R1.p=(P_)(R1.cl->payload[0]);
Sp = Sp - (sizeofW(StgUpdateFrame)+6);
JMP_(ENTRY_CODE(*R1.p));
FE_
}
JMP_(ENTRY_CODE(*R1.p));
FE_
}
INFO_TABLE_SRT(__ap_8_upd_info,__ap_8_upd_entry,8,0,0,0,0,THUNK,,EF_,0,0);
FN_(__ap_8_upd_entry) {
FB_
INFO_TABLE_SRT(__ap_8_upd_info,__ap_8_upd_entry,8,0,0,0,0,THUNK,,EF_,0,0);
FN_(__ap_8_upd_entry) {
FB_
STK_CHK_NP(sizeofW(StgUpdateFrame)+7,1,);
UPD_BH_UPDATABLE(R1.p);
ENTER_CCS(R1.p);
STK_CHK_NP(sizeofW(StgUpdateFrame)+7,1,);
UPD_BH_UPDATABLE(R1.p);
ENTER_CCS(R1.p);
Sp[-UF_SIZE-7]=(W_)(R1.cl->payload[1]);
R1.p=(P_)(R1.cl->payload[0]);
Sp=Sp-10;
Sp[-UF_SIZE-7]=(W_)(R1.cl->payload[1]);
R1.p=(P_)(R1.cl->payload[0]);
Sp=Sp-10;
JMP_(ENTRY_CODE(*R1.p));
FE_
}
JMP_(ENTRY_CODE(*R1.p));
FE_
}