.file "x.c" .text .section .rodata .align 4 .type tf, @object .size tf, 4 tf: .long 10 .text .globl func1 .type func1, @function func1: .LFB0: .cfi_startproc endbr64 pushq %rbp .cfi_def_cfa_offset 16 .cfi_offset 6, -16 movq %rsp, %rbp .cfi_def_cfa_register 6 movq %rdi, -24(%rbp) movl $0, -4(%rbp) jmp .L2 .L3: movl -4(%rbp), %eax cltq leaq 0(,%rax,4), %rdx movq -24(%rbp), %rax addq %rdx, %rax movl (%rax), %eax movl -4(%rbp), %edx movslq %edx, %rdx leaq 0(,%rdx,4), %rcx movq -24(%rbp), %rdx addq %rcx, %rdx movslq %eax, %rcx imulq $1717986919, %rcx, %rcx shrq $32, %rcx sarl $2, %ecx sarl $31, %eax movl %eax, %esi movl %ecx, %eax subl %esi, %eax movl %eax, (%rdx) addl $1, -4(%rbp) .L2: cmpl $99, -4(%rbp) jle .L3 nop nop popq %rbp .cfi_def_cfa 7, 8 ret .cfi_endproc .LFE0: .size func1, .-func1 .globl func2 .type func2, @function func2: .LFB1: .cfi_startproc endbr64 pushq %rbp .cfi_def_cfa_offset 16 .cfi_offset 6, -16 movq %rsp, %rbp .cfi_def_cfa_register 6 movq %rdi, -24(%rbp) movl $0, -4(%rbp) jmp .L5 .L6: movl -4(%rbp), %eax cltq leaq 0(,%rax,4), %rdx movq -24(%rbp), %rax addq %rdx, %rax movl (%rax), %eax movl $10, %esi movl -4(%rbp), %edx movslq %edx, %rdx leaq 0(,%rdx,4), %rcx movq -24(%rbp), %rdx addq %rdx, %rcx cltd idivl %esi movl %eax, (%rcx) addl $1, -4(%rbp) .L5: cmpl $99, -4(%rbp) jle .L6 nop nop popq %rbp .cfi_def_cfa 7, 8 ret .cfi_endproc .LFE1: .size func2, .-func2 .local mem .comm mem,400,32 .globl main .type main, @function main: .LFB2: .cfi_startproc endbr64 pushq %rbp .cfi_def_cfa_offset 16 .cfi_offset 6, -16 movq %rsp, %rbp .cfi_def_cfa_register 6 movl $400, %edx movl $1, %esi leaq mem(%rip), %rax movq %rax, %rdi call memset@PLT leaq mem(%rip), %rax movq %rax, %rdi call func1 leaq mem(%rip), %rax movq %rax, %rdi call func2 nop popq %rbp .cfi_def_cfa 7, 8 ret .cfi_endproc .LFE2: .size main, .-main .ident "GCC: (Ubuntu 11.3.0-1ubuntu1~22.04) 11.3.0" .section .note.GNU-stack,"",@progbits .section .note.gnu.property,"a" .align 8 .long 1f - 0f .long 4f - 1f .long 5 0: .string "GNU" 1: .align 8 .long 0xc0000002 .long 3f - 2f 2: .long 0x3 3: .align 8 4: