Looks like since recently some clang builds fails for missing reference to `__umoddi3`.

See exemple at:
- https://github.com/ruscur/linux-ci/actions/runs/2789193140
- https://patchwork.ozlabs.org/project/linuxppc-dev/patch/eca9251f1e1f82c4c46ec6380ddb28356ab3fdfe.1659527244.git.christophe.le...@csgroup.eu/

From fs/mpage.o:

00000170 <do_mpage_readpage>:
...
     69c:       38 60 00 00     li      r3,0
     6a0:       38 a0 00 00     li      r5,0
     6a4:       38 c0 00 05     li      r6,5
     6a8:       7d c4 73 78     mr      r4,r14
     6ac:       92 e1 00 10     stw     r23,16(r1)
     6b0:       3a a0 00 00     li      r21,0
     6b4:       93 81 00 18     stw     r28,24(r1)
     6b8:       3b 80 00 05     li      r28,5
     6bc:       92 01 00 14     stw     r16,20(r1)
     6c0:       92 21 00 1c     stw     r17,28(r1)
     6c4:       48 00 00 01     bl      6c4 <do_mpage_readpage+0x554>
                        6c4: R_PPC_REL24        __umoddi3



I don't understand why calling __umoddi3 when the arguments are obviously 32 bits are r3 and r5 are zero.

Christophe

Reply via email to