Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How can I disable compiler optimization in C#?

Tags:

c#

.net

People also ask

How do I turn off optimizations in GCC?

The default optimization level for compiling C programs using GCC is -O0. which turns off all optimizations according to GCC documentation. for example: gcc -O0 test.

What is compiler optimization in C?

Compiler optimization is generally implemented using a sequence of optimizing transformations, algorithms which take a program and transform it to produce a semantically equivalent output program that uses fewer resources or executes faster.

How do I turn off optimization in Visual Studio?

Open the project's Property Pages dialog box. For details, see Set C++ compiler and build properties in Visual Studio. Select the Configuration Properties > C/C++ > Optimization property page. Modify the Optimization property.


At the command line (csc), /optimize-

In the IDE, project properties → build → "optimize code"

For some JIT optimizations, you can use [MethodImpl(...)]


Set Configurations to All Configurations

Set Optimized code checkbox to unchecked

enter image description here


You can disable the optimizations in runtime using an .ini file: http://msdn.microsoft.com/en-us/library/9dd8z24x.aspx

Enter the following text into you .ini [for example Explorer.ini]

[.NET Framework Debugging Control] 
GenerateTrackingInfo=1 
AllowOptimize=0

In Visual Studio I believe you can just create a debug build, but it includes additional debug information. Project Properties (right click on project in solution) gives you access to the controls governing compilation.

If you build on the command line with csc.exe see the /optimize parameter docs. If you don't specify /optimize then the assembly should not be optimized.


before you start to change the settings of the project which might find its way to production verify that your solution configuration is set for Debug and not Release.

I had the same issue and then I saw that it was set to Release by mistake...

enter image description here