X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2Fghci%2FByteCodeAsm.lhs;h=1491f55a46be03207e3b613904547e94313eba7e;hb=eb2bf7ad9f967861da2e19ff71a80428c7c2df28;hp=f1f5c8a12f673f19d709b68ef1c0c3c311bfd42c;hpb=f2363290372453038d1ad85b8a71b206a8fcac3e;p=ghc-hetmet.git diff --git a/compiler/ghci/ByteCodeAsm.lhs b/compiler/ghci/ByteCodeAsm.lhs index f1f5c8a..1491f55 100644 --- a/compiler/ghci/ByteCodeAsm.lhs +++ b/compiler/ghci/ByteCodeAsm.lhs @@ -370,6 +370,12 @@ mkBits findLabel st proto_insns = do st_I1 <- addToSS st_I0 (getName dcon) return (sizeSS st_I0, (st_i0,st_l0,st_p0,st_I1)) +#ifdef mingw32_TARGET_OS + literal st (MachLabel fs (Just sz)) + = litlabel st (appendFS fs (mkFastString ('@':show sz))) + -- On Windows, stdcall labels have a suffix indicating the no. of + -- arg words, e.g. foo@8. testcase: ffi012(ghci) +#endif literal st (MachLabel fs _) = litlabel st fs literal st (MachWord w) = int st (fromIntegral w) literal st (MachInt j) = int st (fromIntegral j)