.file "task03_heap_init.c" .option nopic .attribute arch, "rv32i2p1_zicsr2p0_zifencei2p0" .attribute unaligned_access, 0 .attribute stack_align, 16 .text .align 2 .globl main .type main, @function main: lla a2,.LANCHOR0 andi a4,a2,7 mv a5,a2 beq a4,zero,.L2 andi a5,a2,-8 addi a5,a5,8 .L2: lla a3,.LANCHOR0+160 sub a3,a3,a5 addi a4,a5,-8 andi a3,a3,-8 add a4,a4,a3 sw a4,end_marker,a3 sw zero,0(a4) sw zero,4(a4) sw a4,0(a5) sub a3,a4,a5 sw a3,4(a5) lla a1,start sw a5,0(a1) sw zero,4(a1) sub a5,a5,a2 sw a5,g_aligned_offset,a2 sw a3,g_initial_free_size,a5 lw a5,0(a4) seqz a5,a5 sw a5,g_end_is_last,a4 li a0,0 ret .size main, .-main .globl g_end_is_last .globl g_aligned_offset .globl g_initial_free_size .bss .align 2 .set .LANCHOR0,. + 0 .type heap_area, @object .size heap_area, 168 heap_area: .zero 168 .section .sbss,"aw",@nobits .align 2 .type g_end_is_last, @object .size g_end_is_last, 4 g_end_is_last: .zero 4 .type g_aligned_offset, @object .size g_aligned_offset, 4 g_aligned_offset: .zero 4 .type g_initial_free_size, @object .size g_initial_free_size, 4 g_initial_free_size: .zero 4 .type end_marker, @object .size end_marker, 4 end_marker: .zero 4 .type start, @object .size start, 8 start: .zero 8 .ident "GCC: (15.2.0-23) 15.2.0" .section .note.GNU-stack,"",@progbits