Controlling Optimization Levels

dougbinks edited this page Sep 8, 2014 · 1 revision

The CompileOptions.h header defines the following optimization enumberation:

enum RCppOptimizationLevel
{
	RCCPPOPTIMIZATIONLEVEL_DEFAULT = 0,		// RCCPPOPTIMIZATIONLEVEL_DEBUG in DEBUG, RCCPPOPTIMIZATIONLEVEL_PERF in release. This is the default state.
	RCCPPOPTIMIZATIONLEVEL_DEBUG,			// Low optimization, improve debug experiece. Default in DEBUG
	RCCPPOPTIMIZATIONLEVEL_PERF,			// Optimization for performance, debug experience may suffer. Default in RELEASE
	RCCPPOPTIMIZATIONLEVEL_NOT_SET,			// No optimization set in compile, so either underlying compiler default or set through SetAdditionalCompileOptions
};

These can be set via the IRuntimeObjectSystem::SetOptimizationLevel function for projects. The RCCPPOPTIMIZATIONLEVEL_DEFAULT is equivalent to RCCPPOPTIMIZATIONLEVEL_DEBUG in debug builds, and RCCPPOPTIMIZATIONLEVEL_PERF in release. Setting the level to RCCPPOPTIMIZATIONLEVEL_DEBUG in a release build can be useful to aid debugging once an issue has been found or a complex level loaded for example. The RCCPPOPTIMIZATIONLEVEL_NOT_SET is useful where the developer wants finer control of settings through Setting Additional Compile and Link Options.

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.