X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=compiler%2Fcmm%2FCLabel.hs;fp=compiler%2Fcmm%2FCLabel.hs;h=d7f7724b3c0ac11b13e7f964740812fe127f609f;hp=7c8fe85a34d7a97f7929958be52eb691d97bad2c;hb=3f6e3045889112bf4cab2768c92095209f02fe6c;hpb=82be37a44c572d2e6df6b7da09ea4e059c3f3133 diff --git a/compiler/cmm/CLabel.hs b/compiler/cmm/CLabel.hs index 7c8fe85..d7f7724 100644 --- 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) + 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) - 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 @@ -831,6 +831,8 @@ labelDynamic this_pkg lbl = -- 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)