Le 03/09/2025 à 23:11, Nathan Chancellor a écrit :
When building powerpc configurations in linux-5.4.y with binutils 2.43
or newer, there is an assembler error in arch/powerpc/boot/util.S:

   arch/powerpc/boot/util.S: Assembler messages:
   arch/powerpc/boot/util.S:44: Error: junk at end of line, first unrecognized 
character is `0'
   arch/powerpc/boot/util.S:49: Error: syntax error; found `b', expected `,'
   arch/powerpc/boot/util.S:49: Error: junk at end of line: `b'

binutils 2.43 contains stricter parsing of certain labels [1], namely
that leading zeros are no longer allowed. The GNU assembler
documentation already somewhat forbade this construct:

   To define a local label, write a label of the form 'N:' (where N
   represents any non-negative integer).

Eliminate the leading zero in the label to fix the syntax error. This is
only needed in linux-5.4.y because commit 8b14e1dff067 ("powerpc: Remove
support for PowerPC 601") removed this code altogether in 5.10.

Link: 
https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=226749d5a6ff0d5c607d6428d6c81e1e7e7a994b
 [1]
Signed-off-by: Nathan Chancellor <[email protected]>

Reviewed-by: Christophe Leroy <[email protected]>

---
v1 -> v2:
- Adjust commit message to make it clearer this construct was already
   incorrect under the existing GNU assembler documentation (Segher)

v1: https://lore.kernel.org/[email protected]/
---
  arch/powerpc/boot/util.S | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/powerpc/boot/util.S b/arch/powerpc/boot/util.S
index f11f0589a669..5ab2bc864e66 100644
--- a/arch/powerpc/boot/util.S
+++ b/arch/powerpc/boot/util.S
@@ -41,12 +41,12 @@ udelay:
        srwi    r4,r4,16
        cmpwi   0,r4,1          /* 601 ? */
        bne     .Ludelay_not_601
-00:    li      r0,86   /* Instructions / microsecond? */
+0:     li      r0,86   /* Instructions / microsecond? */
        mtctr   r0
  10:   addi    r0,r0,0 /* NOP */
        bdnz    10b
        subic.  r3,r3,1
-       bne     00b
+       bne     0b
        blr
.Ludelay_not_601:

base-commit: c25f780e491e4734eb27d65aa58e0909fd78ad9f


Reply via email to