From: Andy Polyakov Date: Fri, 10 Feb 2017 09:59:45 +0000 (+0100) Subject: perlasm/x86_64-xlate.pl: recognize even offset(%reg) in cfa_expression. X-Git-Tag: OpenSSL_1_1_1-pre1~2425 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=1cb35b47db8462f5653803501ed68d33b10c249f;p=oweals%2Fopenssl.git perlasm/x86_64-xlate.pl: recognize even offset(%reg) in cfa_expression. This is handy when "offset(%reg)" is a perl variable. Reviewed-by: Rich Salz --- diff --git a/crypto/perlasm/x86_64-xlate.pl b/crypto/perlasm/x86_64-xlate.pl index 2013043a01..1edea05743 100755 --- a/crypto/perlasm/x86_64-xlate.pl +++ b/crypto/perlasm/x86_64-xlate.pl @@ -610,6 +610,8 @@ my %globals; foreach my $token (split(/,\s*/,$line)) { if ($token =~ /^%r/) { push @ret,reg($token); + } elsif ($token =~ /((?:0x)?[0-9a-f]+)\((%r\w+)\)/) { + push @ret,reg("$2+$1"); } elsif ($token =~ /(\w+):(\-?(?:0x)?[0-9a-f]+)(U?)/i) { my $i = 1*eval($2); push @ret,$DW_OP_complex{$1}, ($3 ? uleb128($i) : sleb128($i));