Click here to Skip to main content
11,642,233 members (62,386 online)
Rate this: bad
good
Please Sign up or sign in to vote.
See more: ASP.NET
What optimizations does the C# compiler perform when you use the /optimize+ compiler option?
Posted 26-Nov-12 20:04pm
Rate this: bad
good
Please Sign up or sign in to vote.

Solution 1

As far as I know, C# code optimization is reduced to the general code optimization common for CLI. Apparently, it depends on the version of CLI. Please see:
http://www.drdobbs.com/net-code-optimization/184416840[^].

This is an interesting CodeProject article on JIT optimization: JIT Optimizations[^].

—SA
  Permalink  
Rate this: bad
good
Please Sign up or sign in to vote.

Solution 2

There are two C# compiler switches that impact code optimization: /optimize and /debug.
The following will shows the imapact these switches have on the quality of the IL Code generated by the C# compiler and the quality of the native code generated by the JIT compiler

Compiler Switch Settings : Description
--------------------------------------
/optimize- /debug- : "C# IL code Quality" is UnOptimized and "JIT Native Code Quality" is optimized.

/optimize- /debug(+/full/pdbonly) : "C# IL code Quality" is UnOptimized and "JIT Native Code Quality" is Unoptimized.

/optimize+ /debug(-/+/full/pdbonly): "C# IL code Quality" is Optimized and "JIT Native Code Quality" is optimized.
  Permalink  

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
0 DamithSL 240
1 Sergey Alexandrovich Kryukov 184
2 Afzaal Ahmad Zeeshan 139
3 OriginalGriff 135
4 Mika Wendelius 80
0 Mika Wendelius 460
1 DamithSL 443
2 OriginalGriff 340
3 Afzaal Ahmad Zeeshan 228
4 Sergey Alexandrovich Kryukov 179


Advertise | Privacy | Mobile
Web04 | 2.8.150731.1 | Last Updated 27 Nov 2012
Copyright © CodeProject, 1999-2015
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100