Update while code generation
Update optimization option
Little update