I try to understand the stack framework by the GAS, and a recursive function assembly case is shown here, as a 32-bit x86 program for Linux:
.section .data
.section .text
.globl _start
.globl factorial
_start:
pushl $3
call factorial
popl