X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;ds=sidebyside;f=compiler%2FbasicTypes%2FUniqSupply.lhs;h=710fc034a60196271131641fd47fc7e4fb1b6164;hb=150cc9e2e4657cc58bd7ec4c15e5cb72f2e1c0f6;hp=7937043dd6d1b9ee0ccf6f1cd6ab592162fe9c28;hpb=f2b02ce821f793bd1ccc23f2bcbef8efc82dd38e;p=ghc-hetmet.git diff --git a/compiler/basicTypes/UniqSupply.lhs b/compiler/basicTypes/UniqSupply.lhs index 7937043..710fc03 100644 --- a/compiler/basicTypes/UniqSupply.lhs +++ b/compiler/basicTypes/UniqSupply.lhs @@ -73,15 +73,15 @@ mkSplitUniqSupply (C# c#) -- This is one of the most hammered bits in the whole compiler mk_supply# = unsafeInterleaveIO ( - genSymZh >>= \ (W# u#) -> + genSymZh >>= \ (I# u#) -> mk_supply# >>= \ s1 -> mk_supply# >>= \ s2 -> - return (MkSplitUniqSupply (w2i (mask# `or#` u#)) s1 s2) + return (MkSplitUniqSupply (w2i (mask# `or#` (i2w u#))) s1 s2) ) in mk_supply# -foreign import ccall unsafe "genSymZh" genSymZh :: IO Word +foreign import ccall unsafe "genSymZh" genSymZh :: IO Int splitUniqSupply (MkSplitUniqSupply _ s1 s2) = (s1, s2) \end{code}