From: simonm Date: Fri, 15 May 1998 14:15:29 +0000 (+0000) Subject: [project @ 1998-05-15 14:15:29 by simonm] X-Git-Tag: Approx_2487_patches~695 X-Git-Url: http://git.megacz.com/?a=commitdiff_plain;h=5b33f5fd5db55dfd9efe4032fa4e2404f5fe18f0;p=ghc-hetmet.git [project @ 1998-05-15 14:15:29 by simonm] Fix splitting on i386-unknwon-linux: string constants were being duplicated in each object, leading to large increases in binary sizes. --- diff --git a/ghc/driver/ghc-split.lprl b/ghc/driver/ghc-split.lprl index 962f67d..57729f2 100644 --- a/ghc/driver/ghc-split.lprl +++ b/ghc/driver/ghc-split.lprl @@ -312,7 +312,7 @@ sub process_asm_block_iX86 { $str = "\.text\n\t.align 4\n" . $str; # remove/record any literal constants defined here - while ( ($str =~ /((LC\d+):\n\t\.ascii.*\n)/ )) { + while ( ($str =~ /((\.?LC\d+):\n\t\.(ascii|string).*\n)/ )) { local($label) = $2; local($body) = $1; @@ -321,7 +321,7 @@ sub process_asm_block_iX86 { $LocalConstant{$label} = $body; - $str =~ s/LC\d+:\n\t\.ascii.*\n//; + $str =~ s/\.?LC\d+:\n\t\.(ascii|string).*\n//; } # inject definitions for any local constants now used herein