1. main()
  2. {
  3.     int a=7;
  4.     int b=3;
  5.     int c=(int)((float)a*(float)b);
  6. }
  7.  
  8. Assembly:
  9.  
  10.     .file   "abc.c"
  11.     .text
  12.     .globl  main
  13.     .type   main, @function
  14. main:
  15. .LFB0:
  16.     .cfi_startproc
  17.     pushl   %ebp
  18.     .cfi_def_cfa_offset 8
  19.     .cfi_offset 5, -8
  20.     movl    %esp, %ebp
  21.     .cfi_def_cfa_register 5
  22.     subl    $20, %esp
  23.     movl    $7, -12(%ebp)
  24.     movl    $3, -8(%ebp)
  25.     fildl   -12(%ebp)
  26.     fildl   -8(%ebp)
  27.     fmulp   %st, %st(1)
  28.     fnstcw  -18(%ebp)
  29.     movzwl  -18(%ebp), %eax
  30.     movb    $12, %ah
  31.     movw    %ax, -20(%ebp)
  32.     fldcw   -20(%ebp)
  33.     fistpl  -4(%ebp)
  34.     fldcw   -18(%ebp)
  35.     leave
  36.     .cfi_restore 5
  37.     .cfi_def_cfa 4, 4
  38.     ret
  39.     .cfi_endproc
  40. .LFE0:
  41.     .size   main, .-main
  42.     .ident  "GCC: (Ubuntu/Linaro 4.6.1-9ubuntu3) 4.6.1"
  43.     .section    .note.GNU-stack,"",@progbits