diff options
author | Bartosz Nitka <niteria@gmail.com> | 2016-07-01 04:58:39 -0700 |
---|---|---|
committer | Bartosz Nitka <niteria@gmail.com> | 2016-07-01 05:44:27 -0700 |
commit | cbfeff4b3caade8092c13f0f71371e6525ece9ac (patch) | |
tree | 300101b60cea80cfd2640e4db74efdaa489b7cd9 /compiler/llvmGen | |
parent | 6377757918c1e7f63638d6f258cad8d5f02bb6a7 (diff) | |
download | haskell-cbfeff4b3caade8092c13f0f71371e6525ece9ac.tar.gz |
Remove uniqSetToList
This documents nondeterminism in code generation and removes
the nondeterministic ufmToList function. In the future someone
will have to use nonDetEltsUFM (with proper explanation)
or pprUFM.
Diffstat (limited to 'compiler/llvmGen')
-rw-r--r-- | compiler/llvmGen/LlvmCodeGen/Base.hs | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/compiler/llvmGen/LlvmCodeGen/Base.hs b/compiler/llvmGen/LlvmCodeGen/Base.hs index 392c069822..824a8595fc 100644 --- a/compiler/llvmGen/LlvmCodeGen/Base.hs +++ b/compiler/llvmGen/LlvmCodeGen/Base.hs @@ -448,7 +448,10 @@ getGlobalPtr llvmLbl = do -- will be generated anymore! generateExternDecls :: LlvmM ([LMGlobal], [LlvmType]) generateExternDecls = do - delayed <- fmap uniqSetToList $ getEnv envAliases + delayed <- fmap nonDetEltsUFM $ getEnv envAliases + -- This is non-deterministic but we do not + -- currently support deterministic code-generation. + -- See Note [Unique Determinism and code generation] defss <- flip mapM delayed $ \lbl -> do m_ty <- funLookup lbl case m_ty of |