gcc -S your_source.c explain your question
movl $1, -4(%rbp) #, a
movl -4(%rbp), %ecx # a, a.0
addl $1, -4(%rbp) #, a
addl $1, -4(%rbp) #, a
movl -4(%rbp), %edx # a, tmp61
movl -4(%rbp), %eax # a, tmp62
movl %eax, %esi # tmp62,
movl $.LC0, %edi #, offset to "%d%d%d" sttring
movl $0, %eax #,
call printf #
compiler developer must not expect that someone will try to use it in such an ugly way
if you really need 122: then change asm code as follow:
movl $1, -4(%rbp) #, a
movl -4(%rbp), %eax # a, a.0
addl $1, -4(%rbp) #, a
movl -4(%rbp), %edx # a, tmp61
movl -4(%rbp), %ecx # a, tmp62
movl %eax, %esi # tmp62,
movl $.LC0, %edi #,
movl $0, %eax #,
call printf #
addl $1, -4(%rbp) #, a
leave