projects
/
ghc-hetmet.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
82be37a
)
Assume CmmLabels have dynamic linkage on non-Windows
author
Ben.Lippmeier.anu.edu.au
<unknown>
Sat, 2 Jan 2010 10:03:34 +0000
(10:03 +0000)
committer
Ben.Lippmeier.anu.edu.au
<unknown>
Sat, 2 Jan 2010 10:03:34 +0000
(10:03 +0000)
compiler/cmm/CLabel.hs
patch
|
blob
|
history
diff --git
a/compiler/cmm/CLabel.hs
b/compiler/cmm/CLabel.hs
index
7c8fe85
..
d7f7724
100644
(file)
--- a/
compiler/cmm/CLabel.hs
+++ b/
compiler/cmm/CLabel.hs
@@
-808,13
+808,13
@@
labelDynamic this_pkg lbl =
-- is the RTS in a DLL or not?
RtsLabel _ -> not opt_Static && (this_pkg /= rtsPackageId)
-- is the RTS in a DLL or not?
RtsLabel _ -> not opt_Static && (this_pkg /= rtsPackageId)
+ IdLabel n _ k -> isDllName this_pkg n
+
+#if mingw32_TARGET_OS
-- When compiling in the "dyn" way, eack package is to be linked into its own shared library.
CmmLabel pkg _ _
-> not opt_Static && (this_pkg /= pkg)
-- When compiling in the "dyn" way, eack package is to be linked into its own shared library.
CmmLabel pkg _ _
-> not opt_Static && (this_pkg /= pkg)
- IdLabel n _ k -> isDllName this_pkg n
-
-#if mingw32_TARGET_OS
-- Foreign label is in some un-named foreign package (or DLL)
ForeignLabel _ _ ForeignLabelInExternalPackage _ -> True
-- Foreign label is in some un-named foreign package (or DLL)
ForeignLabel _ _ ForeignLabelInExternalPackage _ -> True
@@
-831,6
+831,8
@@
labelDynamic this_pkg lbl =
-- so we claim that all foreign imports come from dynamic libraries
ForeignLabel _ _ _ _ -> True
-- so we claim that all foreign imports come from dynamic libraries
ForeignLabel _ _ _ _ -> True
+ CmmLabel pkg _ _ -> True
+
#endif
ModuleInitLabel m _ -> not opt_Static && this_pkg /= (modulePackageId m)
PlainModuleInitLabel m -> not opt_Static && this_pkg /= (modulePackageId m)
#endif
ModuleInitLabel m _ -> not opt_Static && this_pkg /= (modulePackageId m)
PlainModuleInitLabel m -> not opt_Static && this_pkg /= (modulePackageId m)