1781 lines
23 KiB
ArmAsm
1781 lines
23 KiB
ArmAsm
|
.file "17_maximal_clique.sy"
|
||
|
.option pic
|
||
|
.attribute arch, "rv64i2p1_m2p0_a2p1_f2p2_d2p2_c2p0_zicsr2p0_zifencei2p0"
|
||
|
.attribute unaligned_access, 0
|
||
|
.attribute stack_align, 16
|
||
|
.text
|
||
|
.align 1
|
||
|
.globl is_clique
|
||
|
.type is_clique, @function
|
||
|
is_clique:
|
||
|
li a5,1
|
||
|
mv a6,a0
|
||
|
ble a0,a5,.L6
|
||
|
li a7,2
|
||
|
lla t3,.LANCHOR0+8
|
||
|
sext.w a5,a7
|
||
|
mv t1,t3
|
||
|
addiw t4,a0,-1
|
||
|
lla a1,graph
|
||
|
ble a6,a5,.L6
|
||
|
.L14:
|
||
|
lw a4,-4(t1)
|
||
|
subw a3,t4,a5
|
||
|
slli a3,a3,32
|
||
|
srli a3,a3,32
|
||
|
addi a5,a7,-1
|
||
|
slli a2,a4,4
|
||
|
add a3,a3,a5
|
||
|
sub a2,a2,a4
|
||
|
slli a3,a3,2
|
||
|
add a3,t3,a3
|
||
|
mv a4,t1
|
||
|
slli a2,a2,1
|
||
|
j .L3
|
||
|
.L13:
|
||
|
beq a4,a3,.L12
|
||
|
.L3:
|
||
|
lw a5,0(a4)
|
||
|
addi a4,a4,4
|
||
|
add a5,a2,a5
|
||
|
slli a5,a5,2
|
||
|
add a5,a1,a5
|
||
|
lw a0,0(a5)
|
||
|
bne a0,zero,.L13
|
||
|
ret
|
||
|
.L12:
|
||
|
addi a7,a7,1
|
||
|
sext.w a5,a7
|
||
|
addi t1,t1,4
|
||
|
bgt a6,a5,.L14
|
||
|
.L6:
|
||
|
li a0,1
|
||
|
ret
|
||
|
.size is_clique, .-is_clique
|
||
|
.align 1
|
||
|
.globl maxCliques
|
||
|
.type maxCliques, @function
|
||
|
maxCliques:
|
||
|
addi sp,sp,-432
|
||
|
sd s1,408(sp)
|
||
|
lla s1,.LANCHOR0
|
||
|
lw a4,120(s1)
|
||
|
sd ra,424(sp)
|
||
|
sd s0,416(sp)
|
||
|
sd s2,400(sp)
|
||
|
sd s3,392(sp)
|
||
|
sd s4,384(sp)
|
||
|
sd s5,376(sp)
|
||
|
sd s6,368(sp)
|
||
|
sd s7,360(sp)
|
||
|
sd s8,352(sp)
|
||
|
sd s9,344(sp)
|
||
|
sd s10,336(sp)
|
||
|
sd s11,328(sp)
|
||
|
sd zero,168(sp)
|
||
|
ble a4,zero,.L126
|
||
|
mv a3,a1
|
||
|
slli a5,a1,2
|
||
|
addiw a0,a3,2
|
||
|
sd a5,200(sp)
|
||
|
li a2,1
|
||
|
add a5,s1,a5
|
||
|
addiw a1,a1,1
|
||
|
sw a0,80(sp)
|
||
|
addiw t3,a3,3
|
||
|
addiw a6,a3,4
|
||
|
addiw s8,a3,5
|
||
|
addiw s6,a3,6
|
||
|
addiw s3,a3,7
|
||
|
sw a2,0(a5)
|
||
|
sext.w a5,a0
|
||
|
addiw a0,a3,9
|
||
|
sw a1,312(sp)
|
||
|
sw t3,56(sp)
|
||
|
sw a6,40(sp)
|
||
|
sw s8,24(sp)
|
||
|
sw s6,16(sp)
|
||
|
sw s3,216(sp)
|
||
|
sd a1,144(sp)
|
||
|
sd a0,184(sp)
|
||
|
sext.w s11,a3
|
||
|
addiw t2,a3,8
|
||
|
ble a1,a2,.L121
|
||
|
sd a2,72(sp)
|
||
|
.L107:
|
||
|
li t4,1
|
||
|
sext.w a2,t4
|
||
|
lla t5,.LANCHOR0+4
|
||
|
lla t1,graph
|
||
|
ble a3,a2,.L18
|
||
|
.L206:
|
||
|
lw a1,0(t5)
|
||
|
subw a0,s11,a2
|
||
|
slli a0,a0,32
|
||
|
srli a0,a0,32
|
||
|
slli a7,a1,4
|
||
|
add a0,a0,t4
|
||
|
sub a7,a7,a1
|
||
|
slli a0,a0,2
|
||
|
add a0,s1,a0
|
||
|
mv a1,t5
|
||
|
slli a7,a7,1
|
||
|
j .L20
|
||
|
.L187:
|
||
|
beq a1,a0,.L186
|
||
|
.L20:
|
||
|
lw a2,4(a1)
|
||
|
addi a1,a1,4
|
||
|
add a2,a7,a2
|
||
|
slli a2,a2,2
|
||
|
add a2,t1,a2
|
||
|
lw a2,0(a2)
|
||
|
bne a2,zero,.L187
|
||
|
ld a2,72(sp)
|
||
|
addiw a1,a2,1
|
||
|
sd a1,72(sp)
|
||
|
mv a2,a1
|
||
|
bgt a1,a4,.L126
|
||
|
.L212:
|
||
|
ld a1,200(sp)
|
||
|
add a1,s1,a1
|
||
|
sw a2,0(a1)
|
||
|
ld a1,144(sp)
|
||
|
li a2,1
|
||
|
bgt a1,a2,.L107
|
||
|
.L17:
|
||
|
ld a2,144(sp)
|
||
|
slli a2,a2,2
|
||
|
add a1,s1,a2
|
||
|
sd a2,160(sp)
|
||
|
li a2,1
|
||
|
sw a2,0(a1)
|
||
|
ble a5,a2,.L22
|
||
|
li a0,0
|
||
|
li a1,1
|
||
|
.L103:
|
||
|
slli t6,s11,32
|
||
|
lla t0,.LANCHOR0+8
|
||
|
srli t6,t6,32
|
||
|
mv s0,t0
|
||
|
addi t6,t6,1
|
||
|
li t5,1
|
||
|
lla t4,graph
|
||
|
.L26:
|
||
|
sext.w a2,t5
|
||
|
beq t5,t6,.L23
|
||
|
lw a7,-4(s0)
|
||
|
subw t1,s11,a2
|
||
|
slli t1,t1,32
|
||
|
srli t1,t1,32
|
||
|
slli s2,a7,4
|
||
|
add t1,t1,t5
|
||
|
sub s2,s2,a7
|
||
|
slli t1,t1,2
|
||
|
add t1,t0,t1
|
||
|
mv a7,s0
|
||
|
slli s2,s2,1
|
||
|
j .L25
|
||
|
.L189:
|
||
|
beq a7,t1,.L188
|
||
|
.L25:
|
||
|
lw a2,0(a7)
|
||
|
addi a7,a7,4
|
||
|
add a2,s2,a2
|
||
|
slli a2,a2,2
|
||
|
add a2,t4,a2
|
||
|
lw a2,0(a2)
|
||
|
bne a2,zero,.L189
|
||
|
.L24:
|
||
|
addiw a1,a1,1
|
||
|
bgt a1,a4,.L102
|
||
|
.L210:
|
||
|
ld s0,160(sp)
|
||
|
li a2,1
|
||
|
add a7,s1,s0
|
||
|
sw a1,0(a7)
|
||
|
bgt a5,a2,.L103
|
||
|
.L23:
|
||
|
ld s0,144(sp)
|
||
|
lw a2,312(sp)
|
||
|
blt s0,a0,.L190
|
||
|
.L118:
|
||
|
sext.w a2,a2
|
||
|
sd a2,232(sp)
|
||
|
.L105:
|
||
|
slli a2,a5,2
|
||
|
add a0,s1,a2
|
||
|
sd a2,152(sp)
|
||
|
li a2,1
|
||
|
sw a2,0(a0)
|
||
|
ble t3,a2,.L28
|
||
|
li a7,0
|
||
|
.L98:
|
||
|
addiw s0,s11,1
|
||
|
slli s4,s0,32
|
||
|
lla t0,.LANCHOR0+8
|
||
|
srli s4,s4,32
|
||
|
mv s2,t0
|
||
|
addi s4,s4,1
|
||
|
li t6,1
|
||
|
lla t5,graph
|
||
|
.L32:
|
||
|
sext.w a0,t6
|
||
|
beq t6,s4,.L29
|
||
|
lw t1,-4(s2)
|
||
|
subw t4,s0,a0
|
||
|
slli t4,t4,32
|
||
|
srli t4,t4,32
|
||
|
slli s5,t1,4
|
||
|
add t4,t4,t6
|
||
|
sub s5,s5,t1
|
||
|
slli t4,t4,2
|
||
|
add t4,t0,t4
|
||
|
mv t1,s2
|
||
|
slli s5,s5,1
|
||
|
j .L31
|
||
|
.L192:
|
||
|
beq t1,t4,.L191
|
||
|
.L31:
|
||
|
lw a0,0(t1)
|
||
|
addi t1,t1,4
|
||
|
add a0,s5,a0
|
||
|
slli a0,a0,2
|
||
|
add a0,t5,a0
|
||
|
lw a0,0(a0)
|
||
|
bne a0,zero,.L192
|
||
|
addiw a2,a2,1
|
||
|
bgt a2,a4,.L97
|
||
|
.L209:
|
||
|
ld s0,152(sp)
|
||
|
li a0,1
|
||
|
add t1,s1,s0
|
||
|
sw a2,0(t1)
|
||
|
bgt t3,a0,.L98
|
||
|
.L29:
|
||
|
lw a0,80(sp)
|
||
|
blt a5,a7,.L193
|
||
|
.L117:
|
||
|
sext.w a0,a0
|
||
|
sd a0,240(sp)
|
||
|
.L100:
|
||
|
slli a0,t3,2
|
||
|
add a7,s1,a0
|
||
|
sd a0,96(sp)
|
||
|
li a0,1
|
||
|
sw a0,0(a7)
|
||
|
ble a6,a0,.L34
|
||
|
li a7,0
|
||
|
li t4,1
|
||
|
.L93:
|
||
|
lwu s2,80(sp)
|
||
|
lla t0,.LANCHOR0+8
|
||
|
mv s4,t0
|
||
|
addi s2,s2,1
|
||
|
li s0,1
|
||
|
lla t6,graph
|
||
|
.L38:
|
||
|
sext.w a0,s0
|
||
|
beq s0,s2,.L35
|
||
|
lw t1,-4(s4)
|
||
|
subw t5,a5,a0
|
||
|
slli t5,t5,32
|
||
|
srli t5,t5,32
|
||
|
slli s5,t1,4
|
||
|
add t5,t5,s0
|
||
|
sub s5,s5,t1
|
||
|
slli t5,t5,2
|
||
|
add t5,t0,t5
|
||
|
mv t1,s4
|
||
|
slli s5,s5,1
|
||
|
j .L37
|
||
|
.L195:
|
||
|
beq t1,t5,.L194
|
||
|
.L37:
|
||
|
lw a0,0(t1)
|
||
|
addi t1,t1,4
|
||
|
add a0,s5,a0
|
||
|
slli a0,a0,2
|
||
|
add a0,t6,a0
|
||
|
lw a0,0(a0)
|
||
|
bne a0,zero,.L195
|
||
|
addiw t4,t4,1
|
||
|
bgt t4,a4,.L92
|
||
|
.L208:
|
||
|
ld s0,96(sp)
|
||
|
li a0,1
|
||
|
add t1,s1,s0
|
||
|
sw t4,0(t1)
|
||
|
bgt a6,a0,.L93
|
||
|
.L35:
|
||
|
lw a0,56(sp)
|
||
|
blt t3,a7,.L196
|
||
|
.L116:
|
||
|
sext.w a0,a0
|
||
|
sd a0,224(sp)
|
||
|
.L95:
|
||
|
slli a0,a6,2
|
||
|
add a7,s1,a0
|
||
|
sd a0,88(sp)
|
||
|
li a0,1
|
||
|
sw a0,0(a7)
|
||
|
ble s8,a0,.L40
|
||
|
li a7,0
|
||
|
li t1,1
|
||
|
.L88:
|
||
|
lwu s4,56(sp)
|
||
|
lla t0,.LANCHOR0+8
|
||
|
li s2,1
|
||
|
addi s4,s4,1
|
||
|
mv s5,t0
|
||
|
lla s0,graph
|
||
|
sext.w a0,s2
|
||
|
beq s2,s4,.L41
|
||
|
.L200:
|
||
|
lw t5,-4(s5)
|
||
|
subw t6,t3,a0
|
||
|
slli t6,t6,32
|
||
|
srli t6,t6,32
|
||
|
slli s7,t5,4
|
||
|
add t6,t6,s2
|
||
|
sub s7,s7,t5
|
||
|
slli t6,t6,2
|
||
|
add t6,t0,t6
|
||
|
mv t5,s5
|
||
|
slli s7,s7,1
|
||
|
j .L43
|
||
|
.L198:
|
||
|
beq t6,t5,.L197
|
||
|
.L43:
|
||
|
lw a0,0(t5)
|
||
|
addi t5,t5,4
|
||
|
add a0,s7,a0
|
||
|
slli a0,a0,2
|
||
|
add a0,s0,a0
|
||
|
lw a0,0(a0)
|
||
|
bne a0,zero,.L198
|
||
|
.L42:
|
||
|
addiw t1,t1,1
|
||
|
bgt t1,a4,.L87
|
||
|
ld s0,88(sp)
|
||
|
li a0,1
|
||
|
add t5,s1,s0
|
||
|
sw t1,0(t5)
|
||
|
bgt s8,a0,.L88
|
||
|
lw t5,40(sp)
|
||
|
blt a6,a7,.L199
|
||
|
.L89:
|
||
|
slli a0,s8,2
|
||
|
li a7,1
|
||
|
sd a0,64(sp)
|
||
|
add a0,s1,a0
|
||
|
sw a7,0(a0)
|
||
|
sext.w a0,t5
|
||
|
li s9,1
|
||
|
sd a0,208(sp)
|
||
|
li a7,0
|
||
|
bgt s6,s9,.L83
|
||
|
.L165:
|
||
|
ld s0,24(sp)
|
||
|
not a0,s8
|
||
|
srai a0,a0,63
|
||
|
and a0,s0,a0
|
||
|
j .L179
|
||
|
.L197:
|
||
|
addi s2,s2,1
|
||
|
addi s5,s5,4
|
||
|
sext.w a0,s2
|
||
|
bne s2,s4,.L200
|
||
|
.L41:
|
||
|
lw a0,40(sp)
|
||
|
blt a6,a7,.L201
|
||
|
.L115:
|
||
|
sext.w a0,a0
|
||
|
sd a0,208(sp)
|
||
|
.L46:
|
||
|
slli a0,s8,2
|
||
|
li a7,1
|
||
|
sd a0,64(sp)
|
||
|
add a0,s1,a0
|
||
|
sw a7,0(a0)
|
||
|
li s9,1
|
||
|
li a7,0
|
||
|
ble s6,s9,.L165
|
||
|
.L83:
|
||
|
lwu s4,40(sp)
|
||
|
lla t0,.LANCHOR0+8
|
||
|
mv s5,t0
|
||
|
addi s4,s4,1
|
||
|
li s2,1
|
||
|
lla s0,graph
|
||
|
.L50:
|
||
|
sext.w a0,s2
|
||
|
beq s4,s2,.L47
|
||
|
lw t5,-4(s5)
|
||
|
subw t6,a6,a0
|
||
|
slli t6,t6,32
|
||
|
srli t6,t6,32
|
||
|
slli s7,t5,4
|
||
|
add t6,t6,s2
|
||
|
sub s7,s7,t5
|
||
|
slli t6,t6,2
|
||
|
add t6,t0,t6
|
||
|
mv t5,s5
|
||
|
slli s7,s7,1
|
||
|
j .L49
|
||
|
.L203:
|
||
|
beq t6,t5,.L202
|
||
|
.L49:
|
||
|
lw a0,0(t5)
|
||
|
addi t5,t5,4
|
||
|
add a0,s7,a0
|
||
|
slli a0,a0,2
|
||
|
add a0,s0,a0
|
||
|
lw a0,0(a0)
|
||
|
bne a0,zero,.L203
|
||
|
.L48:
|
||
|
addiw s9,s9,1
|
||
|
bgt s9,a4,.L82
|
||
|
.L221:
|
||
|
ld s0,64(sp)
|
||
|
li a0,1
|
||
|
add t5,s1,s0
|
||
|
sw s9,0(t5)
|
||
|
bgt s6,a0,.L83
|
||
|
.L47:
|
||
|
lw a0,24(sp)
|
||
|
bge s8,a7,.L179
|
||
|
mv a0,a7
|
||
|
.L179:
|
||
|
sext.w a0,a0
|
||
|
sd a0,192(sp)
|
||
|
slli a0,s6,2
|
||
|
add a7,s1,a0
|
||
|
sd a0,48(sp)
|
||
|
li a0,1
|
||
|
sw a0,0(a7)
|
||
|
ble s3,a0,.L52
|
||
|
li a0,0
|
||
|
li s7,1
|
||
|
.L78:
|
||
|
lwu s2,24(sp)
|
||
|
lla t0,.LANCHOR0+8
|
||
|
li s0,1
|
||
|
addi s2,s2,1
|
||
|
mv s4,t0
|
||
|
lla t6,graph
|
||
|
sext.w a7,s0
|
||
|
beq s2,s0,.L53
|
||
|
.L213:
|
||
|
lw t5,-4(s4)
|
||
|
subw s5,s8,a7
|
||
|
slli s5,s5,32
|
||
|
srli s5,s5,32
|
||
|
slli s10,t5,4
|
||
|
add s5,s5,s0
|
||
|
sub s10,s10,t5
|
||
|
slli s5,s5,2
|
||
|
add s5,t0,s5
|
||
|
mv t5,s4
|
||
|
slli s10,s10,1
|
||
|
j .L55
|
||
|
.L205:
|
||
|
beq s5,t5,.L204
|
||
|
.L55:
|
||
|
lw a7,0(t5)
|
||
|
addi t5,t5,4
|
||
|
add a7,s10,a7
|
||
|
slli a7,a7,2
|
||
|
add a7,t6,a7
|
||
|
lw a7,0(a7)
|
||
|
bne a7,zero,.L205
|
||
|
addiw s7,s7,1
|
||
|
bgt s7,a4,.L77
|
||
|
.L220:
|
||
|
ld s0,48(sp)
|
||
|
li a7,1
|
||
|
add t5,s1,s0
|
||
|
sw s7,0(t5)
|
||
|
bgt s3,a7,.L78
|
||
|
lw t5,16(sp)
|
||
|
bge s6,a0,.L79
|
||
|
mv t5,a0
|
||
|
.L79:
|
||
|
slli a0,s3,2
|
||
|
sd a0,32(sp)
|
||
|
li a7,1
|
||
|
add a0,s1,a0
|
||
|
sw a7,0(a0)
|
||
|
sext.w a0,t5
|
||
|
sd a0,176(sp)
|
||
|
li s5,1
|
||
|
li a0,0
|
||
|
bgt t2,s5,.L73
|
||
|
.L164:
|
||
|
ld a0,216(sp)
|
||
|
not t0,s3
|
||
|
srai t0,t0,63
|
||
|
and t0,a0,t0
|
||
|
j .L180
|
||
|
.L194:
|
||
|
addi s0,s0,1
|
||
|
addi s4,s4,4
|
||
|
j .L38
|
||
|
.L191:
|
||
|
addi t6,t6,1
|
||
|
addi s2,s2,4
|
||
|
j .L32
|
||
|
.L188:
|
||
|
addi t5,t5,1
|
||
|
addi s0,s0,4
|
||
|
j .L26
|
||
|
.L186:
|
||
|
addi t4,t4,1
|
||
|
sext.w a2,t4
|
||
|
addi t5,t5,4
|
||
|
bgt a3,a2,.L206
|
||
|
.L18:
|
||
|
ld a1,168(sp)
|
||
|
sext.w a2,a3
|
||
|
blt a3,a1,.L207
|
||
|
sd a2,168(sp)
|
||
|
j .L17
|
||
|
.L87:
|
||
|
ld s0,224(sp)
|
||
|
mv a0,a7
|
||
|
bge a7,s0,.L91
|
||
|
mv a0,s0
|
||
|
.L91:
|
||
|
addiw t4,t4,1
|
||
|
sext.w a7,a0
|
||
|
ble t4,a4,.L208
|
||
|
.L92:
|
||
|
ld s0,240(sp)
|
||
|
mv a0,a7
|
||
|
bge a7,s0,.L96
|
||
|
mv a0,s0
|
||
|
.L96:
|
||
|
addiw a2,a2,1
|
||
|
sext.w a7,a0
|
||
|
ble a2,a4,.L209
|
||
|
.L97:
|
||
|
ld a2,232(sp)
|
||
|
sext.w a0,a7
|
||
|
bge a7,a2,.L24
|
||
|
addiw a1,a1,1
|
||
|
sext.w a0,a2
|
||
|
ble a1,a4,.L210
|
||
|
.L102:
|
||
|
ld a1,168(sp)
|
||
|
sext.w a2,a0
|
||
|
blt a0,a1,.L211
|
||
|
sd a2,168(sp)
|
||
|
.L227:
|
||
|
ld a2,72(sp)
|
||
|
addiw a1,a2,1
|
||
|
sd a1,72(sp)
|
||
|
mv a2,a1
|
||
|
ble a1,a4,.L212
|
||
|
.L126:
|
||
|
ld ra,424(sp)
|
||
|
ld s0,416(sp)
|
||
|
ld a0,168(sp)
|
||
|
ld s1,408(sp)
|
||
|
ld s2,400(sp)
|
||
|
ld s3,392(sp)
|
||
|
ld s4,384(sp)
|
||
|
ld s5,376(sp)
|
||
|
ld s6,368(sp)
|
||
|
ld s7,360(sp)
|
||
|
ld s8,352(sp)
|
||
|
ld s9,344(sp)
|
||
|
ld s10,336(sp)
|
||
|
ld s11,328(sp)
|
||
|
addi sp,sp,432
|
||
|
jr ra
|
||
|
.L204:
|
||
|
addi s0,s0,1
|
||
|
addi s4,s4,4
|
||
|
sext.w a7,s0
|
||
|
bne s2,s0,.L213
|
||
|
.L53:
|
||
|
lw a7,16(sp)
|
||
|
blt s6,a0,.L214
|
||
|
.L111:
|
||
|
sext.w a0,a7
|
||
|
sd a0,176(sp)
|
||
|
.L58:
|
||
|
slli a0,s3,2
|
||
|
sd a0,32(sp)
|
||
|
li a7,1
|
||
|
add a0,s1,a0
|
||
|
sw a7,0(a0)
|
||
|
li s5,1
|
||
|
li a0,0
|
||
|
ble t2,s5,.L164
|
||
|
.L73:
|
||
|
lwu s2,16(sp)
|
||
|
lla t0,.LANCHOR0+8
|
||
|
mv s4,t0
|
||
|
addi s2,s2,1
|
||
|
li s0,1
|
||
|
lla t6,graph
|
||
|
mv a7,t0
|
||
|
.L62:
|
||
|
sext.w t5,s0
|
||
|
beq s2,s0,.L59
|
||
|
lw s10,-4(s4)
|
||
|
subw t0,s6,t5
|
||
|
slli t0,t0,32
|
||
|
srli t0,t0,32
|
||
|
slli t5,s10,4
|
||
|
add t0,t0,s0
|
||
|
sub s10,t5,s10
|
||
|
slli t0,t0,2
|
||
|
add t0,a7,t0
|
||
|
mv t5,s4
|
||
|
slli s10,s10,1
|
||
|
sd s2,8(sp)
|
||
|
j .L61
|
||
|
.L216:
|
||
|
beq t0,t5,.L215
|
||
|
.L61:
|
||
|
lw s2,0(t5)
|
||
|
addi t5,t5,4
|
||
|
add s2,s10,s2
|
||
|
slli s2,s2,2
|
||
|
add s2,t6,s2
|
||
|
lw s2,0(s2)
|
||
|
bne s2,zero,.L216
|
||
|
.L60:
|
||
|
addiw s5,s5,1
|
||
|
bgt s5,a4,.L72
|
||
|
.L219:
|
||
|
ld s0,32(sp)
|
||
|
li a7,1
|
||
|
add t5,s1,s0
|
||
|
sw s5,0(t5)
|
||
|
bgt t2,a7,.L73
|
||
|
.L59:
|
||
|
lw t0,216(sp)
|
||
|
bge s3,a0,.L180
|
||
|
mv t0,a0
|
||
|
.L180:
|
||
|
sext.w t0,t0
|
||
|
slli s4,s3,32
|
||
|
sd t0,104(sp)
|
||
|
mv t0,a1
|
||
|
ld a1,184(sp)
|
||
|
slli a7,t2,2
|
||
|
srli s4,s4,32
|
||
|
sd a5,136(sp)
|
||
|
li t6,0
|
||
|
li s2,1
|
||
|
add a7,s1,a7
|
||
|
li t5,1
|
||
|
lla s10,.LANCHOR0+8
|
||
|
addi s4,s4,1
|
||
|
lla s0,graph
|
||
|
sd s11,112(sp)
|
||
|
sd a6,120(sp)
|
||
|
sd t3,128(sp)
|
||
|
mv a5,t1
|
||
|
sd a4,8(sp)
|
||
|
.L70:
|
||
|
sw s2,0(a7)
|
||
|
ble a1,t5,.L64
|
||
|
li t1,1
|
||
|
lla t3,.LANCHOR0+8
|
||
|
sext.w a6,t1
|
||
|
beq s4,t1,.L64
|
||
|
.L222:
|
||
|
lw a4,-4(t3)
|
||
|
subw a6,s3,a6
|
||
|
slli a6,a6,32
|
||
|
srli a6,a6,32
|
||
|
add a6,a6,t1
|
||
|
slli s11,a4,4
|
||
|
slli a6,a6,2
|
||
|
sub s11,s11,a4
|
||
|
add a6,s10,a6
|
||
|
mv a0,t3
|
||
|
slli s11,s11,1
|
||
|
j .L66
|
||
|
.L218:
|
||
|
beq a6,a0,.L217
|
||
|
.L66:
|
||
|
lw a4,0(a0)
|
||
|
addi a0,a0,4
|
||
|
add a4,s11,a4
|
||
|
slli a4,a4,2
|
||
|
add a4,s0,a4
|
||
|
lw a4,0(a4)
|
||
|
bne a4,zero,.L218
|
||
|
ld a4,8(sp)
|
||
|
addiw s2,s2,1
|
||
|
ble s2,a4,.L70
|
||
|
.L225:
|
||
|
mv a1,t0
|
||
|
ld t0,104(sp)
|
||
|
mv t1,a5
|
||
|
ld s11,112(sp)
|
||
|
ld a6,120(sp)
|
||
|
ld t3,128(sp)
|
||
|
ld a5,136(sp)
|
||
|
sext.w a0,t0
|
||
|
bge t0,t6,.L60
|
||
|
addiw s5,s5,1
|
||
|
sext.w a0,t6
|
||
|
ble s5,a4,.L219
|
||
|
.L72:
|
||
|
ld s0,176(sp)
|
||
|
mv a7,s0
|
||
|
bge s0,a0,.L76
|
||
|
mv a7,a0
|
||
|
.L76:
|
||
|
addiw s7,s7,1
|
||
|
sext.w a0,a7
|
||
|
ble s7,a4,.L220
|
||
|
.L77:
|
||
|
ld s0,192(sp)
|
||
|
sext.w a7,a0
|
||
|
bge a0,s0,.L48
|
||
|
addiw s9,s9,1
|
||
|
sext.w a7,s0
|
||
|
ble s9,a4,.L221
|
||
|
.L82:
|
||
|
ld s0,208(sp)
|
||
|
mv a0,a7
|
||
|
bge a7,s0,.L86
|
||
|
mv a0,s0
|
||
|
.L86:
|
||
|
sext.w a7,a0
|
||
|
j .L42
|
||
|
.L202:
|
||
|
addi s2,s2,1
|
||
|
addi s5,s5,4
|
||
|
j .L50
|
||
|
.L217:
|
||
|
addi t1,t1,1
|
||
|
addi t3,t3,4
|
||
|
sext.w a6,t1
|
||
|
bne s4,t1,.L222
|
||
|
.L64:
|
||
|
mv a4,t2
|
||
|
blt t2,t6,.L223
|
||
|
.L68:
|
||
|
mv a0,s2
|
||
|
sd a7,304(sp)
|
||
|
sd a3,296(sp)
|
||
|
sd t4,288(sp)
|
||
|
sd a2,280(sp)
|
||
|
sd t0,272(sp)
|
||
|
sd a5,264(sp)
|
||
|
sd t2,256(sp)
|
||
|
sw a4,252(sp)
|
||
|
sd a1,8(sp)
|
||
|
call maxCliques
|
||
|
lw a4,252(sp)
|
||
|
ld a1,8(sp)
|
||
|
ld t2,256(sp)
|
||
|
mv a6,a4
|
||
|
sext.w a4,a4
|
||
|
ld a5,264(sp)
|
||
|
ld t0,272(sp)
|
||
|
ld a2,280(sp)
|
||
|
ld t4,288(sp)
|
||
|
ld a3,296(sp)
|
||
|
ld a7,304(sp)
|
||
|
li t5,1
|
||
|
blt a4,a0,.L224
|
||
|
lw a4,120(s1)
|
||
|
sext.w t6,a6
|
||
|
sd a4,8(sp)
|
||
|
.L226:
|
||
|
ld a4,8(sp)
|
||
|
addiw s2,s2,1
|
||
|
ble s2,a4,.L70
|
||
|
j .L225
|
||
|
.L215:
|
||
|
ld s2,8(sp)
|
||
|
addi s0,s0,1
|
||
|
addi s4,s4,4
|
||
|
j .L62
|
||
|
.L224:
|
||
|
lw a4,120(s1)
|
||
|
mv a6,a0
|
||
|
sext.w t6,a6
|
||
|
sd a4,8(sp)
|
||
|
j .L226
|
||
|
.L223:
|
||
|
mv a4,t6
|
||
|
j .L68
|
||
|
.L214:
|
||
|
mv a7,a0
|
||
|
j .L111
|
||
|
.L211:
|
||
|
sext.w a2,a1
|
||
|
sd a2,168(sp)
|
||
|
j .L227
|
||
|
.L196:
|
||
|
mv a0,a7
|
||
|
j .L116
|
||
|
.L201:
|
||
|
mv a0,a7
|
||
|
j .L115
|
||
|
.L193:
|
||
|
mv a0,a7
|
||
|
j .L117
|
||
|
.L190:
|
||
|
mv a2,a0
|
||
|
j .L118
|
||
|
.L207:
|
||
|
sext.w a2,a1
|
||
|
sd a2,168(sp)
|
||
|
j .L17
|
||
|
.L199:
|
||
|
mv t5,a7
|
||
|
j .L89
|
||
|
.L52:
|
||
|
ld s0,16(sp)
|
||
|
not a0,s6
|
||
|
srai a0,a0,63
|
||
|
and a0,s0,a0
|
||
|
sext.w a0,a0
|
||
|
sd a0,176(sp)
|
||
|
li s7,1
|
||
|
j .L58
|
||
|
.L40:
|
||
|
ld s0,40(sp)
|
||
|
not a0,a6
|
||
|
srai a0,a0,63
|
||
|
and a0,s0,a0
|
||
|
sext.w a0,a0
|
||
|
sd a0,208(sp)
|
||
|
li t1,1
|
||
|
j .L46
|
||
|
.L28:
|
||
|
ld a0,80(sp)
|
||
|
not a2,a5
|
||
|
srai a2,a2,63
|
||
|
and a2,a0,a2
|
||
|
sext.w a2,a2
|
||
|
sd a2,240(sp)
|
||
|
li a2,1
|
||
|
j .L100
|
||
|
.L34:
|
||
|
ld s0,56(sp)
|
||
|
not a0,t3
|
||
|
srai a0,a0,63
|
||
|
and a0,s0,a0
|
||
|
sext.w a0,a0
|
||
|
sd a0,224(sp)
|
||
|
li t4,1
|
||
|
j .L95
|
||
|
.L22:
|
||
|
ld a2,144(sp)
|
||
|
ld a1,312(sp)
|
||
|
not a2,a2
|
||
|
srai a2,a2,63
|
||
|
and a2,a1,a2
|
||
|
sext.w a2,a2
|
||
|
sd a2,232(sp)
|
||
|
li a1,1
|
||
|
j .L105
|
||
|
.L121:
|
||
|
li a2,1
|
||
|
sd a2,72(sp)
|
||
|
j .L17
|
||
|
.size maxCliques, .-maxCliques
|
||
|
.section .text.startup,"ax",@progbits
|
||
|
.align 1
|
||
|
.globl main
|
||
|
.type main, @function
|
||
|
main:
|
||
|
addi sp,sp,-944
|
||
|
li t0,-4096
|
||
|
sd ra,936(sp)
|
||
|
sd s0,928(sp)
|
||
|
sd s1,920(sp)
|
||
|
sd s2,912(sp)
|
||
|
sd s3,904(sp)
|
||
|
sd s4,896(sp)
|
||
|
sd s5,888(sp)
|
||
|
sd s6,880(sp)
|
||
|
sd s7,872(sp)
|
||
|
sd s8,864(sp)
|
||
|
sd s9,856(sp)
|
||
|
sd s10,848(sp)
|
||
|
sd s11,840(sp)
|
||
|
add sp,sp,t0
|
||
|
call getint@plt
|
||
|
lla a5,.LANCHOR0
|
||
|
sw a0,120(a5)
|
||
|
sd a5,8(sp)
|
||
|
call getint@plt
|
||
|
ld a5,8(sp)
|
||
|
sw a0,124(a5)
|
||
|
ble a0,zero,.L233
|
||
|
li s0,-4096
|
||
|
li a4,4096
|
||
|
addi s0,s0,-704
|
||
|
addi a4,a4,704
|
||
|
add a4,a4,s0
|
||
|
addi a3,sp,128
|
||
|
add s0,a4,a3
|
||
|
mv s1,s0
|
||
|
li s2,0
|
||
|
mv s3,a5
|
||
|
.L232:
|
||
|
call getint@plt
|
||
|
sw a0,0(s1)
|
||
|
call getint@plt
|
||
|
lw a4,124(s3)
|
||
|
sw a0,4(s1)
|
||
|
addiw s2,s2,1
|
||
|
addi s1,s1,8
|
||
|
bgt a4,s2,.L232
|
||
|
mv a5,s3
|
||
|
ble a4,zero,.L233
|
||
|
slli a4,a4,3
|
||
|
add a0,a4,s0
|
||
|
lla t1,graph
|
||
|
li a6,1
|
||
|
.L234:
|
||
|
lw a2,0(s0)
|
||
|
lw a1,4(s0)
|
||
|
addi s0,s0,8
|
||
|
slli a3,a2,4
|
||
|
sub a3,a3,a2
|
||
|
slli a4,a1,4
|
||
|
slli a3,a3,1
|
||
|
sub a4,a4,a1
|
||
|
add a3,a3,a1
|
||
|
slli a4,a4,1
|
||
|
slli a3,a3,2
|
||
|
add a4,a4,a2
|
||
|
add a3,t1,a3
|
||
|
slli a4,a4,2
|
||
|
sw a6,0(a3)
|
||
|
add a4,t1,a4
|
||
|
sw a6,0(a4)
|
||
|
bne a0,s0,.L234
|
||
|
.L233:
|
||
|
lw a0,120(a5)
|
||
|
li s2,0
|
||
|
ble a0,zero,.L231
|
||
|
li a3,1
|
||
|
li s2,0
|
||
|
li s0,1
|
||
|
lla t1,graph
|
||
|
lla t4,.LANCHOR0
|
||
|
li t5,17
|
||
|
.L230:
|
||
|
li s4,0
|
||
|
li s1,1
|
||
|
sw a3,4(a5)
|
||
|
mv a4,s0
|
||
|
mv s3,s1
|
||
|
mv s5,s4
|
||
|
mv s6,s0
|
||
|
.L293:
|
||
|
slli a3,a4,4
|
||
|
sub a4,a3,a4
|
||
|
slli a4,a4,1
|
||
|
add a4,a4,s3
|
||
|
slli a4,a4,2
|
||
|
add a4,t1,a4
|
||
|
lw a4,0(a4)
|
||
|
sw s3,8(a5)
|
||
|
beq a4,zero,.L235
|
||
|
li s4,0
|
||
|
li s1,1
|
||
|
sd s3,8(sp)
|
||
|
.L287:
|
||
|
lw a3,4(a5)
|
||
|
lw a2,8(a5)
|
||
|
sw s1,12(a5)
|
||
|
slli a4,a3,4
|
||
|
sub a4,a4,a3
|
||
|
slli a4,a4,1
|
||
|
add a3,a4,a2
|
||
|
slli a3,a3,2
|
||
|
add a3,t1,a3
|
||
|
lw a3,0(a3)
|
||
|
beq a3,zero,.L236
|
||
|
add a4,a4,s1
|
||
|
slli a4,a4,2
|
||
|
add a4,t1,a4
|
||
|
lw a4,0(a4)
|
||
|
beq a4,zero,.L236
|
||
|
slli a4,a2,4
|
||
|
sub a4,a4,a2
|
||
|
slli a4,a4,1
|
||
|
add a4,a4,s1
|
||
|
slli a4,a4,2
|
||
|
add a4,t1,a4
|
||
|
lw a4,0(a4)
|
||
|
beq a4,zero,.L236
|
||
|
li s3,1
|
||
|
li a2,0
|
||
|
sd s1,16(sp)
|
||
|
mv s0,s3
|
||
|
mv t3,t1
|
||
|
.L284:
|
||
|
lw a3,4(a5)
|
||
|
lw a6,8(a5)
|
||
|
sw s0,16(a5)
|
||
|
slli a4,a3,4
|
||
|
sub a4,a4,a3
|
||
|
slli a4,a4,1
|
||
|
add a3,a4,a6
|
||
|
slli a3,a3,2
|
||
|
add a3,t3,a3
|
||
|
lw a3,0(a3)
|
||
|
beq a3,zero,.L237
|
||
|
lw a1,12(a5)
|
||
|
add a3,a4,a1
|
||
|
slli a3,a3,2
|
||
|
add a3,t3,a3
|
||
|
lw a3,0(a3)
|
||
|
beq a3,zero,.L237
|
||
|
add a4,a4,s0
|
||
|
slli a4,a4,2
|
||
|
add a4,t3,a4
|
||
|
lw a4,0(a4)
|
||
|
beq a4,zero,.L237
|
||
|
slli a4,a6,4
|
||
|
sub a4,a4,a6
|
||
|
slli a4,a4,1
|
||
|
add a3,a4,a1
|
||
|
slli a3,a3,2
|
||
|
add a3,t3,a3
|
||
|
lw a3,0(a3)
|
||
|
beq a3,zero,.L237
|
||
|
add a4,a4,s0
|
||
|
slli a4,a4,2
|
||
|
add a4,t3,a4
|
||
|
lw a4,0(a4)
|
||
|
beq a4,zero,.L237
|
||
|
slli a4,a1,4
|
||
|
sub a4,a4,a1
|
||
|
slli a4,a4,1
|
||
|
add a4,a4,s0
|
||
|
slli a4,a4,2
|
||
|
add a4,t3,a4
|
||
|
lw a4,0(a4)
|
||
|
beq a4,zero,.L237
|
||
|
li a3,4
|
||
|
mv a4,a2
|
||
|
bge a2,a3,.L238
|
||
|
li a4,4
|
||
|
.L238:
|
||
|
sext.w s9,a4
|
||
|
sd s2,24(sp)
|
||
|
sd s0,40(sp)
|
||
|
li a2,0
|
||
|
li s3,1
|
||
|
sd s4,32(sp)
|
||
|
mv s7,s6
|
||
|
sd s9,48(sp)
|
||
|
mv s2,a5
|
||
|
mv s0,t3
|
||
|
.L282:
|
||
|
lw a1,4(s2)
|
||
|
lw a7,8(s2)
|
||
|
sw s3,20(s2)
|
||
|
slli a4,a1,4
|
||
|
sub a4,a4,a1
|
||
|
slli a4,a4,1
|
||
|
add a1,a4,a7
|
||
|
slli a1,a1,2
|
||
|
add a1,s0,a1
|
||
|
lw a1,0(a1)
|
||
|
beq a1,zero,.L239
|
||
|
lw a6,12(s2)
|
||
|
add a1,a4,a6
|
||
|
slli a1,a1,2
|
||
|
add a1,s0,a1
|
||
|
lw a1,0(a1)
|
||
|
beq a1,zero,.L239
|
||
|
lw a1,16(s2)
|
||
|
add t1,a4,a1
|
||
|
slli t1,t1,2
|
||
|
add t1,s0,t1
|
||
|
lw t1,0(t1)
|
||
|
beq t1,zero,.L239
|
||
|
add a4,a4,s3
|
||
|
slli a4,a4,2
|
||
|
add a4,s0,a4
|
||
|
lw a4,0(a4)
|
||
|
beq a4,zero,.L239
|
||
|
slli a4,a7,4
|
||
|
sub a4,a4,a7
|
||
|
slli a4,a4,1
|
||
|
add a7,a4,a6
|
||
|
slli a7,a7,2
|
||
|
add a7,s0,a7
|
||
|
lw a7,0(a7)
|
||
|
beq a7,zero,.L239
|
||
|
add a7,a4,a1
|
||
|
slli a7,a7,2
|
||
|
add a7,s0,a7
|
||
|
lw a7,0(a7)
|
||
|
beq a7,zero,.L239
|
||
|
add a4,a4,s3
|
||
|
slli a4,a4,2
|
||
|
add a4,s0,a4
|
||
|
lw a4,0(a4)
|
||
|
beq a4,zero,.L239
|
||
|
slli a4,a6,4
|
||
|
sub a4,a4,a6
|
||
|
slli a4,a4,1
|
||
|
add a6,a4,a1
|
||
|
slli a6,a6,2
|
||
|
add a6,s0,a6
|
||
|
lw a6,0(a6)
|
||
|
beq a6,zero,.L239
|
||
|
add a4,a4,s3
|
||
|
slli a4,a4,2
|
||
|
add a4,s0,a4
|
||
|
lw a4,0(a4)
|
||
|
beq a4,zero,.L239
|
||
|
slli a4,a1,4
|
||
|
sub a4,a4,a1
|
||
|
slli a4,a4,1
|
||
|
add a4,a4,s3
|
||
|
slli a4,a4,2
|
||
|
add a4,s0,a4
|
||
|
lw a4,0(a4)
|
||
|
beq a4,zero,.L239
|
||
|
li a1,5
|
||
|
mv a4,a2
|
||
|
bge a2,a1,.L240
|
||
|
li a4,5
|
||
|
.L240:
|
||
|
sext.w a2,a4
|
||
|
li t3,0
|
||
|
li s1,1
|
||
|
li s9,12
|
||
|
li t6,11
|
||
|
li t0,10
|
||
|
li t2,9
|
||
|
sd s3,56(sp)
|
||
|
.L280:
|
||
|
lw a7,4(s2)
|
||
|
lw t1,8(s2)
|
||
|
sw s1,24(s2)
|
||
|
slli a1,a7,4
|
||
|
sub a1,a1,a7
|
||
|
slli a1,a1,1
|
||
|
add a7,a1,t1
|
||
|
slli a7,a7,2
|
||
|
add a7,s0,a7
|
||
|
lw a7,0(a7)
|
||
|
beq a7,zero,.L241
|
||
|
lw a7,12(s2)
|
||
|
add ra,a1,a7
|
||
|
slli ra,ra,2
|
||
|
add ra,s0,ra
|
||
|
lw ra,0(ra)
|
||
|
beq ra,zero,.L241
|
||
|
lw ra,16(s2)
|
||
|
add s3,a1,ra
|
||
|
slli s3,s3,2
|
||
|
add s3,s0,s3
|
||
|
lw s3,0(s3)
|
||
|
beq s3,zero,.L241
|
||
|
lw s3,20(s2)
|
||
|
add s6,a1,s3
|
||
|
slli s6,s6,2
|
||
|
add s6,s0,s6
|
||
|
lw s6,0(s6)
|
||
|
beq s6,zero,.L241
|
||
|
add a1,a1,s1
|
||
|
slli a1,a1,2
|
||
|
add a1,s0,a1
|
||
|
lw a1,0(a1)
|
||
|
beq a1,zero,.L241
|
||
|
slli a1,t1,4
|
||
|
sub a1,a1,t1
|
||
|
slli a1,a1,1
|
||
|
add t1,a1,a7
|
||
|
slli t1,t1,2
|
||
|
add t1,s0,t1
|
||
|
lw t1,0(t1)
|
||
|
beq t1,zero,.L241
|
||
|
add t1,a1,ra
|
||
|
slli t1,t1,2
|
||
|
add t1,s0,t1
|
||
|
lw t1,0(t1)
|
||
|
beq t1,zero,.L241
|
||
|
add t1,a1,s3
|
||
|
slli t1,t1,2
|
||
|
add t1,s0,t1
|
||
|
lw t1,0(t1)
|
||
|
beq t1,zero,.L241
|
||
|
add a1,a1,s1
|
||
|
slli a1,a1,2
|
||
|
add a1,s0,a1
|
||
|
lw a1,0(a1)
|
||
|
beq a1,zero,.L241
|
||
|
slli t1,a7,4
|
||
|
sub a1,t1,a7
|
||
|
slli a1,a1,1
|
||
|
add a1,a1,ra
|
||
|
slli a1,a1,2
|
||
|
add a1,s0,a1
|
||
|
lw a1,0(a1)
|
||
|
beq a1,zero,.L241
|
||
|
sub a1,t1,a7
|
||
|
slli a1,a1,1
|
||
|
add a7,a1,s3
|
||
|
slli a7,a7,2
|
||
|
add a7,s0,a7
|
||
|
lw a7,0(a7)
|
||
|
beq a7,zero,.L241
|
||
|
add a1,a1,s1
|
||
|
slli a1,a1,2
|
||
|
add a1,s0,a1
|
||
|
lw a1,0(a1)
|
||
|
beq a1,zero,.L241
|
||
|
slli a1,ra,4
|
||
|
sub a1,a1,ra
|
||
|
slli a1,a1,1
|
||
|
add a7,a1,s3
|
||
|
slli a7,a7,2
|
||
|
add a7,s0,a7
|
||
|
lw a7,0(a7)
|
||
|
beq a7,zero,.L241
|
||
|
add a1,a1,s1
|
||
|
slli a1,a1,2
|
||
|
add a1,s0,a1
|
||
|
lw a1,0(a1)
|
||
|
beq a1,zero,.L241
|
||
|
slli a1,s3,4
|
||
|
sub a1,a1,s3
|
||
|
slli a1,a1,1
|
||
|
add a1,a1,s1
|
||
|
slli a1,a1,2
|
||
|
add a1,s0,a1
|
||
|
lw a1,0(a1)
|
||
|
beq a1,zero,.L241
|
||
|
li a7,6
|
||
|
mv a1,t3
|
||
|
blt t3,a7,.L495
|
||
|
.L242:
|
||
|
sext.w a7,a1
|
||
|
sd s1,72(sp)
|
||
|
li t3,0
|
||
|
li s3,1
|
||
|
li s6,13
|
||
|
li s10,14
|
||
|
sd s5,64(sp)
|
||
|
sd a2,80(sp)
|
||
|
sd s7,88(sp)
|
||
|
mv s4,a7
|
||
|
mv s1,s2
|
||
|
.L278:
|
||
|
sw s3,28(s1)
|
||
|
lla a1,.LANCHOR0
|
||
|
mv s1,t4
|
||
|
li s5,8
|
||
|
.L243:
|
||
|
lw a2,4(a1)
|
||
|
lw a3,8(a1)
|
||
|
slli a4,a2,4
|
||
|
sub a5,a4,a2
|
||
|
slli a5,a5,1
|
||
|
add a3,a5,a3
|
||
|
slli a3,a3,2
|
||
|
add a3,s0,a3
|
||
|
lw a3,0(a3)
|
||
|
beq a3,zero,.L244
|
||
|
beq s5,s6,.L245
|
||
|
lw a3,12(a1)
|
||
|
add a3,a5,a3
|
||
|
slli a3,a3,2
|
||
|
add a3,s0,a3
|
||
|
lw a3,0(a3)
|
||
|
beq a3,zero,.L244
|
||
|
beq s5,s9,.L246
|
||
|
lw a3,16(a1)
|
||
|
add a3,a5,a3
|
||
|
slli a3,a3,2
|
||
|
add a3,s0,a3
|
||
|
lw a3,0(a3)
|
||
|
beq a3,zero,.L244
|
||
|
beq s5,t6,.L247
|
||
|
lw a3,20(a1)
|
||
|
add a3,a5,a3
|
||
|
slli a3,a3,2
|
||
|
add a3,s0,a3
|
||
|
lw a3,0(a3)
|
||
|
beq a3,zero,.L244
|
||
|
beq s5,t0,.L248
|
||
|
lw a3,24(a1)
|
||
|
add a5,a5,a3
|
||
|
slli a5,a5,2
|
||
|
add a5,s0,a5
|
||
|
lw a5,0(a5)
|
||
|
beq a5,zero,.L244
|
||
|
beq s5,t2,.L249
|
||
|
lw a3,28(a1)
|
||
|
sub a5,a4,a2
|
||
|
slli a5,a5,1
|
||
|
add a5,a5,a3
|
||
|
slli a5,a5,2
|
||
|
add a5,s0,a5
|
||
|
lw a5,0(a5)
|
||
|
beq a5,zero,.L244
|
||
|
addi a1,a1,4
|
||
|
li s5,9
|
||
|
j .L243
|
||
|
.L264:
|
||
|
li a1,10
|
||
|
mv a0,s8
|
||
|
sd t1,112(sp)
|
||
|
sd a6,104(sp)
|
||
|
sd a3,96(sp)
|
||
|
call maxCliques
|
||
|
ld t1,112(sp)
|
||
|
li a4,9
|
||
|
ld a3,96(sp)
|
||
|
ld a6,104(sp)
|
||
|
mv a5,t1
|
||
|
li t6,11
|
||
|
li t0,10
|
||
|
li t2,9
|
||
|
lla t4,.LANCHOR0
|
||
|
li t5,17
|
||
|
bge t1,a4,.L272
|
||
|
li a5,9
|
||
|
.L272:
|
||
|
sext.w a4,a5
|
||
|
bge a4,a0,.L273
|
||
|
mv a5,a0
|
||
|
.L273:
|
||
|
lw a0,120(t4)
|
||
|
sext.w t1,a5
|
||
|
.L263:
|
||
|
addiw s8,s8,1
|
||
|
ble s8,a0,.L274
|
||
|
mv a7,s5
|
||
|
mv a5,t1
|
||
|
bge t1,a6,.L275
|
||
|
mv a5,a6
|
||
|
.L275:
|
||
|
sext.w a6,a5
|
||
|
.L253:
|
||
|
addiw a7,a7,1
|
||
|
ble a7,a0,.L276
|
||
|
mv s1,a3
|
||
|
sext.w t3,a6
|
||
|
bge a6,s7,.L244
|
||
|
sext.w t3,s7
|
||
|
.L244:
|
||
|
addiw s3,s3,1
|
||
|
ble s3,a0,.L278
|
||
|
mv s2,s1
|
||
|
ld s5,64(sp)
|
||
|
ld a2,80(sp)
|
||
|
ld s7,88(sp)
|
||
|
ld s1,72(sp)
|
||
|
mv a1,t3
|
||
|
bge t3,s4,.L279
|
||
|
mv a1,s4
|
||
|
.L279:
|
||
|
sext.w t3,a1
|
||
|
.L241:
|
||
|
addiw s1,s1,1
|
||
|
ble s1,a0,.L280
|
||
|
ld s3,56(sp)
|
||
|
mv a4,t3
|
||
|
bge t3,a2,.L281
|
||
|
mv a4,a2
|
||
|
.L281:
|
||
|
sext.w a2,a4
|
||
|
.L239:
|
||
|
addiw s3,s3,1
|
||
|
ble s3,a0,.L282
|
||
|
ld s9,48(sp)
|
||
|
mv a5,s2
|
||
|
mv t3,s0
|
||
|
ld s4,32(sp)
|
||
|
ld s2,24(sp)
|
||
|
ld s0,40(sp)
|
||
|
mv s6,s7
|
||
|
mv a4,a2
|
||
|
bge a2,s9,.L283
|
||
|
mv a4,s9
|
||
|
.L283:
|
||
|
sext.w a2,a4
|
||
|
.L237:
|
||
|
addiw s0,s0,1
|
||
|
ble s0,a0,.L284
|
||
|
li a3,3
|
||
|
ld s1,16(sp)
|
||
|
mv t1,t3
|
||
|
mv a4,s4
|
||
|
bge s4,a3,.L285
|
||
|
li a4,3
|
||
|
.L285:
|
||
|
sext.w a3,a4
|
||
|
bge a3,a2,.L286
|
||
|
mv a4,a2
|
||
|
.L286:
|
||
|
sext.w s4,a4
|
||
|
.L236:
|
||
|
addiw s1,s1,1
|
||
|
ble s1,a0,.L287
|
||
|
li a3,2
|
||
|
ld s3,8(sp)
|
||
|
mv a4,s5
|
||
|
blt s5,a3,.L496
|
||
|
.L288:
|
||
|
sext.w a3,a4
|
||
|
blt a3,s4,.L497
|
||
|
.L289:
|
||
|
sext.w s5,a4
|
||
|
.L235:
|
||
|
addiw s3,s3,1
|
||
|
bgt s3,a0,.L498
|
||
|
lw a4,4(a5)
|
||
|
j .L293
|
||
|
.L498:
|
||
|
mv s0,s6
|
||
|
mv a4,s5
|
||
|
bgt s5,zero,.L291
|
||
|
li a4,1
|
||
|
.L291:
|
||
|
sext.w a3,a4
|
||
|
bge a3,s2,.L292
|
||
|
mv a4,s2
|
||
|
.L292:
|
||
|
addiw a3,s0,1
|
||
|
sext.w s2,a4
|
||
|
bgt a3,a0,.L231
|
||
|
mv s0,a3
|
||
|
j .L230
|
||
|
.L231:
|
||
|
mv a0,s2
|
||
|
call putint@plt
|
||
|
li t0,4096
|
||
|
add sp,sp,t0
|
||
|
ld ra,936(sp)
|
||
|
ld s0,928(sp)
|
||
|
ld s1,920(sp)
|
||
|
ld s2,912(sp)
|
||
|
ld s3,904(sp)
|
||
|
ld s4,896(sp)
|
||
|
ld s5,888(sp)
|
||
|
ld s6,880(sp)
|
||
|
ld s7,872(sp)
|
||
|
ld s8,864(sp)
|
||
|
ld s9,856(sp)
|
||
|
ld s10,848(sp)
|
||
|
ld s11,840(sp)
|
||
|
li a0,0
|
||
|
addi sp,sp,944
|
||
|
jr ra
|
||
|
.L245:
|
||
|
li a3,7
|
||
|
sext.w s7,t3
|
||
|
blt t3,a3,.L499
|
||
|
.L251:
|
||
|
li s8,1
|
||
|
mv a3,s1
|
||
|
li a6,0
|
||
|
li s11,15
|
||
|
li s2,16
|
||
|
mv a7,s8
|
||
|
mv s1,s5
|
||
|
.L276:
|
||
|
sw a7,32(t4)
|
||
|
mv a2,t4
|
||
|
li s5,9
|
||
|
.L252:
|
||
|
lw t1,4(a2)
|
||
|
lw a1,8(a2)
|
||
|
slli a4,t1,4
|
||
|
sub a5,a4,t1
|
||
|
slli a5,a5,1
|
||
|
add a1,a5,a1
|
||
|
slli a1,a1,2
|
||
|
add a1,s0,a1
|
||
|
lw a1,0(a1)
|
||
|
beq a1,zero,.L253
|
||
|
beq s5,s11,.L254
|
||
|
lw a1,12(a2)
|
||
|
add a1,a5,a1
|
||
|
slli a1,a1,2
|
||
|
add a1,s0,a1
|
||
|
lw a1,0(a1)
|
||
|
beq a1,zero,.L253
|
||
|
beq s5,s10,.L255
|
||
|
lw a1,16(a2)
|
||
|
add a1,a5,a1
|
||
|
slli a1,a1,2
|
||
|
add a1,s0,a1
|
||
|
lw a1,0(a1)
|
||
|
beq a1,zero,.L253
|
||
|
beq s5,s6,.L256
|
||
|
lw a1,20(a2)
|
||
|
add a1,a5,a1
|
||
|
slli a1,a1,2
|
||
|
add a1,s0,a1
|
||
|
lw a1,0(a1)
|
||
|
beq a1,zero,.L253
|
||
|
beq s5,s9,.L257
|
||
|
lw a1,24(a2)
|
||
|
add a5,a5,a1
|
||
|
slli a5,a5,2
|
||
|
add a5,s0,a5
|
||
|
lw a5,0(a5)
|
||
|
beq a5,zero,.L253
|
||
|
beq s5,t6,.L258
|
||
|
lw a5,28(a2)
|
||
|
sub a4,a4,t1
|
||
|
slli a4,a4,1
|
||
|
add a5,a4,a5
|
||
|
slli a5,a5,2
|
||
|
add a5,s0,a5
|
||
|
lw a5,0(a5)
|
||
|
beq a5,zero,.L253
|
||
|
beq s5,t0,.L259
|
||
|
lw a5,32(a2)
|
||
|
add a5,a4,a5
|
||
|
slli a5,a5,2
|
||
|
add a5,s0,a5
|
||
|
lw a5,0(a5)
|
||
|
beq a5,zero,.L253
|
||
|
addi a2,a2,4
|
||
|
li s5,10
|
||
|
j .L252
|
||
|
.L254:
|
||
|
li a4,8
|
||
|
mv a5,a6
|
||
|
blt a6,a4,.L500
|
||
|
.L261:
|
||
|
sd s5,120(sp)
|
||
|
sext.w a6,a5
|
||
|
li t1,0
|
||
|
li s8,1
|
||
|
mv s5,a7
|
||
|
.L274:
|
||
|
sw s8,36(t4)
|
||
|
mv a2,t4
|
||
|
li a1,10
|
||
|
.L262:
|
||
|
lw a7,4(a2)
|
||
|
lw t3,8(a2)
|
||
|
slli a4,a7,4
|
||
|
sub a5,a4,a7
|
||
|
slli a5,a5,1
|
||
|
add t3,a5,t3
|
||
|
slli t3,t3,2
|
||
|
add t3,s0,t3
|
||
|
lw t3,0(t3)
|
||
|
beq t3,zero,.L263
|
||
|
beq a1,t5,.L264
|
||
|
lw t3,12(a2)
|
||
|
add t3,a5,t3
|
||
|
slli t3,t3,2
|
||
|
add t3,s0,t3
|
||
|
lw t3,0(t3)
|
||
|
beq t3,zero,.L263
|
||
|
beq a1,s2,.L265
|
||
|
lw t3,16(a2)
|
||
|
add t3,a5,t3
|
||
|
slli t3,t3,2
|
||
|
add t3,s0,t3
|
||
|
lw t3,0(t3)
|
||
|
beq t3,zero,.L263
|
||
|
beq a1,s11,.L266
|
||
|
lw t3,20(a2)
|
||
|
add t3,a5,t3
|
||
|
slli t3,t3,2
|
||
|
add t3,s0,t3
|
||
|
lw t3,0(t3)
|
||
|
beq t3,zero,.L263
|
||
|
beq a1,s10,.L267
|
||
|
lw t3,24(a2)
|
||
|
add a5,a5,t3
|
||
|
slli a5,a5,2
|
||
|
add a5,s0,a5
|
||
|
lw a5,0(a5)
|
||
|
beq a5,zero,.L263
|
||
|
beq a1,s6,.L268
|
||
|
lw a5,28(a2)
|
||
|
sub a4,a4,a7
|
||
|
slli a4,a4,1
|
||
|
add a5,a4,a5
|
||
|
slli a5,a5,2
|
||
|
add a5,s0,a5
|
||
|
lw a5,0(a5)
|
||
|
beq a5,zero,.L263
|
||
|
beq a1,s9,.L269
|
||
|
lw a5,32(a2)
|
||
|
add a5,a4,a5
|
||
|
slli a5,a5,2
|
||
|
add a5,s0,a5
|
||
|
lw a5,0(a5)
|
||
|
beq a5,zero,.L263
|
||
|
beq a1,t6,.L270
|
||
|
lw a5,36(a2)
|
||
|
add a5,a4,a5
|
||
|
slli a5,a5,2
|
||
|
add a5,s0,a5
|
||
|
lw a5,0(a5)
|
||
|
beq a5,zero,.L263
|
||
|
addi a2,a2,4
|
||
|
li a1,11
|
||
|
j .L262
|
||
|
.L265:
|
||
|
addi a2,a2,4
|
||
|
li a1,17
|
||
|
j .L262
|
||
|
.L266:
|
||
|
addi a2,a2,4
|
||
|
li a1,16
|
||
|
j .L262
|
||
|
.L255:
|
||
|
addi a2,a2,4
|
||
|
li s5,15
|
||
|
j .L252
|
||
|
.L267:
|
||
|
ld a1,120(sp)
|
||
|
addi a2,a2,4
|
||
|
j .L262
|
||
|
.L256:
|
||
|
addi a2,a2,4
|
||
|
li s5,14
|
||
|
j .L252
|
||
|
.L246:
|
||
|
addi a1,a1,4
|
||
|
li s5,13
|
||
|
j .L243
|
||
|
.L268:
|
||
|
addi a2,a2,4
|
||
|
li a1,14
|
||
|
j .L262
|
||
|
.L257:
|
||
|
addi a2,a2,4
|
||
|
mv s5,s1
|
||
|
j .L252
|
||
|
.L247:
|
||
|
addi a1,a1,4
|
||
|
li s5,12
|
||
|
j .L243
|
||
|
.L269:
|
||
|
addi a2,a2,4
|
||
|
mv a1,s1
|
||
|
j .L262
|
||
|
.L258:
|
||
|
addi a2,a2,4
|
||
|
li s5,12
|
||
|
j .L252
|
||
|
.L270:
|
||
|
addi a2,a2,4
|
||
|
li a1,12
|
||
|
j .L262
|
||
|
.L248:
|
||
|
addi a1,a1,4
|
||
|
li s5,11
|
||
|
j .L243
|
||
|
.L259:
|
||
|
addi a2,a2,4
|
||
|
li s5,11
|
||
|
j .L252
|
||
|
.L249:
|
||
|
addi a1,a1,4
|
||
|
li s5,10
|
||
|
j .L243
|
||
|
.L500:
|
||
|
li a5,8
|
||
|
j .L261
|
||
|
.L497:
|
||
|
mv a4,s4
|
||
|
j .L289
|
||
|
.L496:
|
||
|
li a4,2
|
||
|
j .L288
|
||
|
.L495:
|
||
|
li a1,6
|
||
|
j .L242
|
||
|
.L499:
|
||
|
li s7,7
|
||
|
j .L251
|
||
|
.size main, .-main
|
||
|
.globl graph
|
||
|
.globl m
|
||
|
.globl n
|
||
|
.globl store
|
||
|
.globl _sysy_idx
|
||
|
.globl _sysy_us
|
||
|
.globl _sysy_s
|
||
|
.globl _sysy_m
|
||
|
.globl _sysy_h
|
||
|
.globl _sysy_l2
|
||
|
.globl _sysy_l1
|
||
|
.globl _sysy_end
|
||
|
.globl _sysy_start
|
||
|
.bss
|
||
|
.align 3
|
||
|
.set .LANCHOR0,. + 0
|
||
|
.type store, @object
|
||
|
.size store, 120
|
||
|
store:
|
||
|
.zero 120
|
||
|
.type n, @object
|
||
|
.size n, 4
|
||
|
n:
|
||
|
.zero 4
|
||
|
.type m, @object
|
||
|
.size m, 4
|
||
|
m:
|
||
|
.zero 4
|
||
|
.type graph, @object
|
||
|
.size graph, 3600
|
||
|
graph:
|
||
|
.zero 3600
|
||
|
.type _sysy_idx, @object
|
||
|
.size _sysy_idx, 4
|
||
|
_sysy_idx:
|
||
|
.zero 4
|
||
|
.zero 4
|
||
|
.type _sysy_us, @object
|
||
|
.size _sysy_us, 4096
|
||
|
_sysy_us:
|
||
|
.zero 4096
|
||
|
.type _sysy_s, @object
|
||
|
.size _sysy_s, 4096
|
||
|
_sysy_s:
|
||
|
.zero 4096
|
||
|
.type _sysy_m, @object
|
||
|
.size _sysy_m, 4096
|
||
|
_sysy_m:
|
||
|
.zero 4096
|
||
|
.type _sysy_h, @object
|
||
|
.size _sysy_h, 4096
|
||
|
_sysy_h:
|
||
|
.zero 4096
|
||
|
.type _sysy_l2, @object
|
||
|
.size _sysy_l2, 4096
|
||
|
_sysy_l2:
|
||
|
.zero 4096
|
||
|
.type _sysy_l1, @object
|
||
|
.size _sysy_l1, 4096
|
||
|
_sysy_l1:
|
||
|
.zero 4096
|
||
|
.type _sysy_end, @object
|
||
|
.size _sysy_end, 16
|
||
|
_sysy_end:
|
||
|
.zero 16
|
||
|
.type _sysy_start, @object
|
||
|
.size _sysy_start, 16
|
||
|
_sysy_start:
|
||
|
.zero 16
|
||
|
.ident "GCC: (Debian 12.2.0-13) 12.2.0"
|
||
|
.section .note.GNU-stack,"",@progbits
|