diff options
author | Simon Marlow <simonmar@microsoft.com> | 2007-05-10 09:20:19 +0000 |
---|---|---|
committer | Simon Marlow <simonmar@microsoft.com> | 2007-05-10 09:20:19 +0000 |
commit | 4414ec29267052c5e5dfbc36d596797c7177f822 (patch) | |
tree | 82930aae6a82bdac9e4af72cc1c8d0b2c1908ffb /driver/mangler | |
parent | 0a183bd0d5d9952699295fa9506de0df97392ef5 (diff) | |
download | haskell-4414ec29267052c5e5dfbc36d596797c7177f822.tar.gz |
FIX #1343: regex bug in the x86_64 mangler settings
Diffstat (limited to 'driver/mangler')
-rw-r--r-- | driver/mangler/ghc-asm.lprl | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/driver/mangler/ghc-asm.lprl b/driver/mangler/ghc-asm.lprl index 7bde909b03..0bda1bb4ee 100644 --- a/driver/mangler/ghc-asm.lprl +++ b/driver/mangler/ghc-asm.lprl @@ -218,7 +218,7 @@ sub init_TARGET_STUFF { $T_CONST_LBL = '^\.LC(\d+):$'; # regexp for what such a lbl looks like $T_POST_LBL = ':'; - $T_MOVE_DIRVS = '^(\s*\.(globl|text|data|section|align|size|type|ident|local)\s+.*\n)'; + $T_MOVE_DIRVS = '^(\s*\.(globl|text|data|section|align|size|type|ident|local)([ \t].*)?\n)'; $T_COPY_DIRVS = '\.(globl|type|size|local)'; $T_DOT_WORD = '\.(quad|long|value|byte|zero)'; @@ -598,7 +598,7 @@ sub mangle_asm { # Labels ending "_str": these are literal strings. } elsif ( /^${T_US}([A-Za-z0-9_]+)_str${T_POST_LBL}$/ ) { $chk[++$i] = $_; - $chkcat[$i] = 'rodata'; + $chkcat[$i] = 'relrodata'; $chksymb[$i] = ''; } elsif ( $TargetPlatform =~ /-darwin/ && (/^\s*\.subsections_via_symbols/ |