summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwolfgang.thaller@gmx.net <unknown>2006-03-24 18:13:05 +0000
committerwolfgang.thaller@gmx.net <unknown>2006-03-24 18:13:05 +0000
commit3f873f31fef918ba53fa802a77c308b07f9e676f (patch)
treedfaab162ae3482cc5559881471a04b26fb55eab9
parentd2e1c2cedb08a30f9d9b7c82904b3baa1e351dfa (diff)
downloadhaskell-3f873f31fef918ba53fa802a77c308b07f9e676f.tar.gz
Darwin Mangler: include alignment statements for symbol stubs
-rw-r--r--ghc/driver/mangler/ghc-asm.lprl3
1 files changed, 3 insertions, 0 deletions
diff --git a/ghc/driver/mangler/ghc-asm.lprl b/ghc/driver/mangler/ghc-asm.lprl
index 18388b5802..902593ea7f 100644
--- a/ghc/driver/mangler/ghc-asm.lprl
+++ b/ghc/driver/mangler/ghc-asm.lprl
@@ -602,6 +602,9 @@ sub mangle_asm {
$chkcat[$i] = 'dyld';
$chksymb[$i] = '';
$dyld_section = $_;
+ } elsif ( $TargetPlatform =~ /^.*-apple-darwin.*/ && $chkcat[$i] eq 'dyld' && /^\s*\.align/)
+ { # non_lazy_symbol_ptrs that point to local symbols
+ $dyld_section .= $_;
} elsif ( $TargetPlatform =~ /^.*-apple-darwin.*/ && $chkcat[$i] eq 'dyld' && /^L_.*:$/)
{ # non_lazy_symbol_ptrs that point to local symbols
$chk[++$i] = $dyld_section . $_;