Module: gas-preprocessor Branch: master Commit: a2f6385fd0c12028c79ece50fbb5c1c62f767e36
Author: Martin Storsjo <[email protected]> Committer: Martin Storsjo <[email protected]> Date: Fri Oct 13 12:23:33 2017 +0300 Correctly check for arm condition codes when trying to filter out 'bic' Since an empty condition code also is valid, this also matched for any other string, since it matched the empty string. By making sure the pattern matches the full string, we avoid that issue. Thanks to the later is_arm_register check, this slipped through earlier. --- gas-preprocessor.pl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gas-preprocessor.pl b/gas-preprocessor.pl index 2c9cd07..09fcf0e 100755 --- a/gas-preprocessor.pl +++ b/gas-preprocessor.pl @@ -704,7 +704,7 @@ sub handle_serialized_line { my $cond = $3; my $label = $4; # Don't interpret e.g. bic as b<cc> with ic as conditional code - if ($cond =~ /|$arm_cond_codes/) { + if ($cond =~ /^(|$arm_cond_codes)$/) { if (exists $thumb_labels{$label}) { print ASMFILE ".thumb_func $label\n"; } else { @@ -871,7 +871,7 @@ sub handle_serialized_line { my $width = $4; my $target = $5; # Don't interpret e.g. bic as b<cc> with ic as conditional code - if ($cond !~ /|$arm_cond_codes/) { + if ($cond !~ /^(|$arm_cond_codes)$/) { # Not actually a branch } elsif ($target =~ /^(\d+)([bf])$/) { # The target is a local label _______________________________________________ libav-commits mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-commits
