[llvm-bugs] [Bug 43388] New: __muldsi3 is compiled to call itself when targeting riscv64
via llvm-bugs
llvm-bugs at lists.llvm.org
Fri Sep 20 12:58:53 PDT 2019
https://bugs.llvm.org/show_bug.cgi?id=43388
Bug ID: 43388
Summary: __muldsi3 is compiled to call itself when targeting
riscv64
Product: new-bugs
Version: 9.0
Hardware: All
OS: All
Status: NEW
Severity: normal
Priority: P
Component: new bugs
Assignee: unassignedbugs at nondot.org
Reporter: andrew at ziglang.org
CC: htmldeveloper at gmail.com, llvm-bugs at lists.llvm.org
Created attachment 22538
--> https://bugs.llvm.org/attachment.cgi?id=22538&action=edit
test.ll
Downstream issue: https://github.com/ziglang/zig/issues/3275
LLVM IR attached.
Output assembly:
000000000000001c __muldsi3:
1c: 13 01 01 f7 addi sp, sp, -144
20: 23 34 11 08 sd ra, 136(sp)
24: 23 30 81 08 sd s0, 128(sp)
28: 13 04 01 09 addi s0, sp, 144
2c: 23 20 a4 fe sw a0, -32(s0)
30: 37 06 01 00 lui a2, 16
34: 1b 06 f6 ff addiw a2, a2, -1
38: b3 76 c5 00 and a3, a0, a2
3c: 33 f7 c5 00 and a4, a1, a2
40: 23 38 a4 fc sd a0, -48(s0)
44: 13 85 06 00 mv a0, a3
48: 23 34 b4 fc sd a1, -56(s0)
4c: 93 05 07 00 mv a1, a4
50: 23 30 c4 fc sd a2, -64(s0)
54: 23 3c e4 fa sd a4, -72(s0)
58: 97 00 00 00 auipc ra, 0
5c: e7 80 00 00 jalr ra // invalid recursive call
60: 93 55 05 01 srli a1, a0, 16
64: 03 56 24 fe lhu a2, -30(s0)
68: 23 38 a4 fa sd a0, -80(s0)
6c: 13 05 06 00 mv a0, a2
70: 83 36 84 fb ld a3, -72(s0)
74: 23 34 b4 fa sd a1, -88(s0)
78: 93 85 06 00 mv a1, a3
7c: 23 30 c4 fa sd a2, -96(s0)
80: 97 00 00 00 auipc ra, 0
84: e7 80 00 00 jalr ra // invalid recursive call
88: 83 35 84 fa ld a1, -88(s0)
8c: 33 85 a5 00 add a0, a1, a0
90: 83 35 04 fb ld a1, -80(s0)
94: 03 36 04 fc ld a2, -64(s0)
98: b3 f6 c5 00 and a3, a1, a2
9c: 13 17 05 01 slli a4, a0, 16
a0: b3 e6 e6 00 or a3, a3, a4
a4: 03 37 84 fc ld a4, -56(s0)
a8: 23 2e e4 fc sw a4, -36(s0)
ac: b3 f7 c6 00 and a5, a3, a2
b0: 9b d6 06 01 srliw a3, a3, 16
b4: 03 58 e4 fd lhu a6, -34(s0)
b8: 83 55 04 fe lhu a1, -32(s0)
bc: 23 3c a4 f8 sd a0, -104(s0)
c0: 13 05 08 00 mv a0, a6
c4: 23 38 f4 f8 sd a5, -112(s0)
c8: 23 34 d4 f8 sd a3, -120(s0)
cc: 23 30 04 f9 sd a6, -128(s0)
d0: 97 00 00 00 auipc ra, 0
d4: e7 80 00 00 jalr ra // invalid recursive call
d8: 83 35 84 f8 ld a1, -120(s0)
dc: 33 85 a5 00 add a0, a1, a0
e0: 23 22 a4 fe sw a0, -28(s0)
e4: 13 15 05 01 slli a0, a0, 16
e8: 83 35 04 f9 ld a1, -112(s0)
ec: 33 e5 a5 00 or a0, a1, a0
f0: 23 24 a4 fe sw a0, -24(s0)
f4: 03 35 84 f9 ld a0, -104(s0)
f8: 9b 55 05 01 srliw a1, a0, 16
fc: 03 56 64 fe lhu a2, -26(s0)
100: b3 85 c5 00 add a1, a1, a2
104: 03 35 04 fa ld a0, -96(s0)
108: 03 36 04 f8 ld a2, -128(s0)
10c: 23 3c b4 f6 sd a1, -136(s0)
110: 93 05 06 00 mv a1, a2
114: 97 00 00 00 auipc ra, 0
118: e7 80 00 00 jalr ra // invalid recursive call
11c: 83 35 84 f7 ld a1, -136(s0)
120: 33 85 a5 00 add a0, a1, a0
124: 23 26 a4 fe sw a0, -20(s0)
128: 03 35 84 fc ld a0, -56(s0)
12c: 83 35 04 fd ld a1, -48(s0)
130: 03 36 84 fe ld a2, -24(s0)
134: 23 38 a4 f6 sd a0, -144(s0)
138: 13 05 06 00 mv a0, a2
13c: 03 34 01 08 ld s0, 128(sp)
140: 83 30 81 08 ld ra, 136(sp)
144: 13 01 01 09 addi sp, sp, 144
148: 67 80 00 00 ret
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20190920/ab3f3d71/attachment.html>
More information about the llvm-bugs
mailing list