All pastes #82287 Raw Edit

Stuff

public text v1 · immutable
·published 2006-07-08 06:53 UTC
rendered paste body
void f()
{
  printf("yes\n");
}

int main()
{
  int x;
  x = random();
  if (x < 100) {
    int y;
    y = random();
    if (y < 100) {
      f();
    }
  }
}


--

        .file   "stack.c"
        .section        .rodata
.LC0:
        .string "yes\n"
        .text
        .p2align 2,,3
.globl f
        .type   f, @function
f:
        pushl   %ebp
        movl    %esp, %ebp
        subl    $8, %esp
        subl    $12, %esp
        pushl   $.LC0
        call    printf
        addl    $16, %esp
        leave
        ret
        .size   f, .-f
        .p2align 2,,3
.globl main
        .type   main, @function
main:
        pushl   %ebp
        movl    %esp, %ebp
        subl    $8, %esp
        andl    $-16, %esp
        movl    $0, %eax
        addl    $15, %eax
        addl    $15, %eax
        shrl    $4, %eax
        sall    $4, %eax
        subl    %eax, %esp
        call    random
        movl    %eax, -4(%ebp)
        cmpl    $99, -4(%ebp)
        jg      .L3
        call    random
        movl    %eax, -8(%ebp)
        cmpl    $99, -8(%ebp)
        jg      .L3
        call    f
.L3:
        leave
        ret
        .size   main, .-main
        .ident  "GCC: (GNU) 3.4.4 [FreeBSD] 20050518"