X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Fincludes%2FCmm.h;h=783b0e41bb0e7087e17aca46f7e1b0d8faed8c2d;hb=c137ecd7e6e83d0f9c39b15ccdb9f2355f243c91;hp=ea760a860fbf34b0de2414324de51eb35cfe5c02;hpb=beb5737b7ee42c4e9373a505e7d957206d69a30e;p=ghc-hetmet.git diff --git a/ghc/includes/Cmm.h b/ghc/includes/Cmm.h index ea760a8..783b0e4 100644 --- a/ghc/includes/Cmm.h +++ b/ghc/includes/Cmm.h @@ -232,9 +232,11 @@ #define ENTER() \ again: \ + W_ info; \ + info = %INFO_PTR(R1); \ switch [INVALID_OBJECT .. N_CLOSURE_TYPES] \ - (TO_W_( %INFO_TYPE(%GET_STD_INFO(R1)) )) { \ - case \ + (TO_W_( %INFO_TYPE(%STD_INFO(info)) )) { \ + case \ IND, \ IND_OLDGEN, \ IND_PERM, \ @@ -244,7 +246,7 @@ R1 = StgInd_indirectee(R1); \ goto again; \ } \ - case \ + case \ BCO, \ FUN, \ FUN_1_0, \ @@ -259,7 +261,7 @@ } \ default: \ { \ - jump %GET_ENTRY(R1); \ + jump %ENTRY_CODE(info); \ } \ }