diff --git a/ghc/driver/mangler/ghc-asm.lprl b/ghc/driver/mangler/ghc-asm.lprl index 20d9043ca64766a5d93c22b5484dc7dad1aa0198..d15003b72a8d27700c772311edda282be381a9c0 100644 --- a/ghc/driver/mangler/ghc-asm.lprl +++ b/ghc/driver/mangler/ghc-asm.lprl @@ -435,7 +435,7 @@ sub mangle_asm { $chkcat[$i] = 'literal'; $chksymb[$i] = $1; - } elsif ( /^$TUS[@]?__stg_split_marker(\d+)$TPOSTLBL[@]?$/o ) { + } elsif ( /^$TUS[@]?__stg_split_marker(\d*)$TPOSTLBL[@]?$/o ) { $chk[++$i] = $_; $chkcat[$i] = 'splitmarker'; $chksymb[$i] = $1; @@ -734,7 +734,7 @@ sub mangle_asm { # HWL HACK: dont die, just print a warning #print stderr "HWL: this should die! Epilogue junk?: $e\n" if $e =~ /^\t[^\.]/ # && $TargetPlatform !~ /^powerpc-/; #ToDo: remove test - die "Epilogue junk?: $e\n" if $e =~ /^\t[^\.]/ + die "Epilogue junk?: $e\n" if $e =~ /^\t[^\.\n]/ && $TargetPlatform !~ /^powerpc-/; #ToDo: remove test # glue together what's left diff --git a/ghc/driver/split/ghc-split.lprl b/ghc/driver/split/ghc-split.lprl index 91a34d256e6af497f2e5dc682d4af67f841be764..5e4d0bc988c90a9c88d1d503447edfbedbea8884 100644 --- a/ghc/driver/split/ghc-split.lprl +++ b/ghc/driver/split/ghc-split.lprl @@ -4,46 +4,6 @@ %* * %************************************************************************ -\begin{code} -sub inject_split_markers { - local($hc_file) = @_; - - unlink("$Tmp_prefix.unmkd"); - local($to_do) = "$Cp $hc_file $Tmp_prefix.unmkd"; - &run_something($to_do, 'Prepare to number split markers'); - - open(TMPI, "< $Tmp_prefix.unmkd") || &tidy_up_and_die(1,"$Pgm: failed to open `$Tmp_prefix.unmkd' (to read)\n"); - open(TMPO, "> $hc_file") || &tidy_up_and_die(1,"$Pgm: failed to open `$hc_file' (to write)\n"); - - local($marker_no) = 1; - - # make sure there is a split marker before any "real" code - $_ = <TMPI>; - while ( $_ ne '' && ( /^$/ || /^#/ ) ) { - print TMPO $_; - $_ = <TMPI>; - } - print TMPO "__STG_SPLIT_MARKER(1)\n"; - print TMPO $_ if ! /^\s*\/\* SPLIT \*\/\s*$/; - - # Have to be a bit careful detecting /* SPLIT */ comments - # since a progam may use a string containing "/* SPLIT */" - # We check that there is nothing else on the line - - while (<TMPI>) { - if (/^\s*\/\* SPLIT \*\/\s*$/) { - $marker_no++; - print TMPO "__STG_SPLIT_MARKER($marker_no)\n"; - next; - } - print TMPO $_; - } - - close(TMPI) || &tidy_up_and_die(1,"Failed reading $Tmp_prefix.unmkd\n"); - close(TMPO) || &tidy_up_and_die(1,"Failed writing $hc_file\n"); -} -\end{code} - \begin{code} sub split_asm_file { local($asm_file) = @_;