(続き)
movl $1, -8(%ebp)
movl $50, -4(%ebp) # <variable>.f_
movl $2, -16(%ebp)
movl $25, -12(%ebp) # <variable>.f_
movl $3, -24(%ebp)
movl $37, -20(%ebp) # <variable>.f_
movl $5, -32(%ebp)
movl $5, -28(%ebp) # <variable>.f_
movl $5, %eax
こういう感じの処理に展開されてしまいます。戻り値の5は
最終行でいきなり得られているんですが、その前の8行が
完全に無駄です。これ取り去る方法というか、取り去られる
ようなコードの書き方ってないでしょうか?

g++の3.3使用です。