X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=driver%2Fmangler%2Fghc-asm.lprl;h=88766cba88949241c8f3514f730311a0d9490019;hp=91d20d67db0faa23d716272d8ab72a46071ee299;hb=974d0c018057cda10dff6309de65bae8780190be;hpb=c83f6043834e171a0360bb8f456c5a57f875dc0e diff --git a/driver/mangler/ghc-asm.lprl b/driver/mangler/ghc-asm.lprl index 91d20d6..88766cb 100644 --- a/driver/mangler/ghc-asm.lprl +++ b/driver/mangler/ghc-asm.lprl @@ -173,7 +173,13 @@ sub init_TARGET_STUFF { $T_X86_BADJMP = '^\tjmp\s+[^\.\*]'; $T_MOVE_DIRVS = '^(\s*(\.(p2)?align\s.*|\.globl\s+\S+|\.text|\.data|\.section\s+.*|\.type\s+.*|\.size\s+\S+\s*,\s*\d+|\.ident.*|\.local.*)\n)'; - $T_COPY_DIRVS = '^\s*\.(globl|type|size|local)'; + if ( $TargetPlatform =~ /solaris2/ ) { + # newer Solaris linkers are picky about .size information, so + # omit it (see #1421) + $T_COPY_DIRVS = '^\s*\.(globl|local)'; + } else { + $T_COPY_DIRVS = '^\s*\.(globl|type|size|local)'; + } $T_DOT_WORD = '\.(long|value|word|byte|zero)'; $T_DOT_GLOBAL = '\.globl';