perlasm/x86_64-xlate.pl: refine symbol recognition in .xdata. Hexadecimals were erroneously recognized as symbols in .xdata. (Imported from upstream's b068a9b914887af5cc99895754412582fbb0e10b) Change-Id: I5d8e8e1969669a8961733802d9f034cf26c45552 Reviewed-on: https://boringssl-review.googlesource.com/c/34704 Reviewed-by: Adam Langley <agl@google.com> Commit-Queue: David Benjamin <davidben@google.com>
diff --git a/crypto/perlasm/x86_64-xlate.pl b/crypto/perlasm/x86_64-xlate.pl index 2e65d1d..78832fc 100755 --- a/crypto/perlasm/x86_64-xlate.pl +++ b/crypto/perlasm/x86_64-xlate.pl
@@ -894,7 +894,7 @@ $var=~s/^(0b[0-1]+)/oct($1)/eig; $var=~s/^0x([0-9a-f]+)/0$1h/ig if ($masm); if ($sz eq "D" && ($current_segment=~/.[px]data/ || $dir eq ".rva")) - { $var=~s/([_a-z\$\@][_a-z0-9\$\@]*)/$nasm?"$1 wrt ..imagebase":"imagerel $1"/egi; } + { $var=~s/^([_a-z\$\@][_a-z0-9\$\@]*)/$nasm?"$1 wrt ..imagebase":"imagerel $1"/egi; } $var; };