Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Sharybin <sergey.vfx@gmail.com>2015-11-21 19:42:31 +0300
committerSergey Sharybin <sergey.vfx@gmail.com>2015-11-21 19:42:31 +0300
commita106da7f1dd92b7fc8559d7f83509e7f21758615 (patch)
tree218390ecd14a56fafa019b46fa2dd9a8d9e3c75a /intern/cycles/device/device_opencl.cpp
parent9aafec1ce1bfdb815c2ed6fe2da83f9451fde3e4 (diff)
Cycles: Move build options constructions to DeviceRequestedFeatures
This way it's easier to re-use requested features logic across multiple device implementations.
Diffstat (limited to 'intern/cycles/device/device_opencl.cpp')
-rw-r--r--intern/cycles/device/device_opencl.cpp32
1 files changed, 2 insertions, 30 deletions
diff --git a/intern/cycles/device/device_opencl.cpp b/intern/cycles/device/device_opencl.cpp
index 0db11e07c8b..5bef6a39728 100644
--- a/intern/cycles/device/device_opencl.cpp
+++ b/intern/cycles/device/device_opencl.cpp
@@ -1550,34 +1550,6 @@ protected:
}
}
- string build_options_from_requested_features(
- const DeviceRequestedFeatures& requested_features)
- {
- string build_options = "";
- if(requested_features.experimental) {
- build_options += "-D__KERNEL_EXPERIMENTAL__ ";
- }
- build_options += "-D__NODES_MAX_GROUP__=" +
- string_printf("%d", requested_features.max_nodes_group);
- build_options += " -D__NODES_FEATURES__=" +
- string_printf("%d", requested_features.nodes_features);
- build_options += string_printf(" -D__MAX_CLOSURE__=%d",
- requested_features.max_closure);
- if(!requested_features.use_hair) {
- build_options += " -D__NO_HAIR__";
- }
- if(!requested_features.use_object_motion) {
- build_options += " -D__NO_OBJECT_MOTION__";
- }
- if(!requested_features.use_camera_motion) {
- build_options += " -D__NO_CAMERA_MOTION__";
- }
- if(!requested_features.use_baking) {
- build_options += " -D__NO_BAKING__";
- }
- return build_options;
- }
-
/* ** Those guys are for workign around some compiler-specific bugs ** */
virtual cl_program load_cached_kernel(
@@ -2312,7 +2284,7 @@ public:
#ifdef __WORK_STEALING__
build_options += " -D__WORK_STEALING__";
#endif
- build_options += build_options_from_requested_features(requested_features);
+ build_options += requested_features.get_build_options();
/* Set compute device build option. */
cl_device_type device_type;
@@ -3585,7 +3557,7 @@ protected:
string build_options_for_base_program(
const DeviceRequestedFeatures& requested_features)
{
- return build_options_from_requested_features(requested_features);
+ return requested_features.get_build_options();
}
};