Effective Intermediate Code Generation Techniques