diff mbox series

[FFmpeg-devel,GASPP] Don't mangle .L local labels for ELF targets

Message ID 20240222105737.3169560-1-martin@martin.st
State Accepted
Headers show
Series [FFmpeg-devel,GASPP] Don't mangle .L local labels for ELF targets | expand

Checks

Context Check Description
andriy/configure_x86 warning Failed to apply patch
yinshiyou/configure_loongarch64 warning Failed to apply patch

Commit Message

Martin Storsjö Feb. 22, 2024, 10:57 a.m. UTC
This fixes building FFmpeg's libavcodec/aarch64/h264idct_neon.S
for a Linux target. (It's not necessary to use gas-preprocessor for
such a target for a very long time, but it can be useful to be able
to test gas-preprocessor there still.)
---
 gas-preprocessor.pl | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

Comments

J. Dekker Feb. 22, 2024, 3:12 p.m. UTC | #1
Martin Storsjö <martin@martin.st> writes:
> This fixes building FFmpeg's libavcodec/aarch64/h264idct_neon.S
> for a Linux target. (It's not necessary to use gas-preprocessor for
> such a target for a very long time, but it can be useful to be able
> to test gas-preprocessor there still.)
> ---
>  gas-preprocessor.pl | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/gas-preprocessor.pl b/gas-preprocessor.pl
> index ba75611..2880858 100755
> --- a/gas-preprocessor.pl
> +++ b/gas-preprocessor.pl
> @@ -738,7 +738,10 @@ sub handle_serialized_line {
>      }
>  
>      # mach-o local symbol names start with L (no dot)
> -    $line =~ s/(?<!\w)\.(L\w+)/$1/g;
> +    # armasm also can't handle labels that start with a dot.
> +    if ($as_type =~ /apple-/ or $as_type eq "armasm") {
> +        $line =~ s/(?<!\w)\.(L\w+)/$1/g;
> +    }
>  
>      # recycle the '.func' directive for '.thumb_func'
>      if ($thumb and $as_type =~ /^apple-/) {

LGTM.
diff mbox series

Patch

diff --git a/gas-preprocessor.pl b/gas-preprocessor.pl
index ba75611..2880858 100755
--- a/gas-preprocessor.pl
+++ b/gas-preprocessor.pl
@@ -738,7 +738,10 @@  sub handle_serialized_line {
     }
 
     # mach-o local symbol names start with L (no dot)
-    $line =~ s/(?<!\w)\.(L\w+)/$1/g;
+    # armasm also can't handle labels that start with a dot.
+    if ($as_type =~ /apple-/ or $as_type eq "armasm") {
+        $line =~ s/(?<!\w)\.(L\w+)/$1/g;
+    }
 
     # recycle the '.func' directive for '.thumb_func'
     if ($thumb and $as_type =~ /^apple-/) {