[libav-devel] [GASPP PATCH 2/2] Don't match whitespace as branch condition codes

Luca Barbato lu_zero at gentoo.org
Mon Oct 22 17:39:12 CEST 2018


On 19/10/2018 23:18, Martin Storsjo wrote:
> For cases like "b    1b", this could previously be matched as
> $cond = "  ".
> 
> This fixes preprocessing with a preprocessor that preserves multiple
> consecutive spaces, like cl.exe does.
> ---
> Better fix, which also works in a number of cases where the previous
> version failed.
> ---
>  gas-preprocessor.pl | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/gas-preprocessor.pl b/gas-preprocessor.pl
> index b22ee8a..c42412f 100755
> --- a/gas-preprocessor.pl
> +++ b/gas-preprocessor.pl
> @@ -879,7 +879,7 @@ sub handle_serialized_line {
>  
>  
>          # Check branch instructions
> -        if ($line =~ /(?:^|\n)\s*(\w+\s*:\s*)?(bl?x?\.?(..)?(\.w)?)\s+(\w+)/) {
> +        if ($line =~ /(?:^|\n)\s*(\w+\s*:\s*)?(bl?x?\.?([^\s]{2})?(\.w)?)\s+(\w+)/) {
>              my $instr = $2;
>              my $cond = $3;
>              my $width = $4;
> 

Looks fine.


More information about the libav-devel mailing list