comaniac commented on a change in pull request #6269:
URL: https://github.com/apache/incubator-tvm/pull/6269#discussion_r474161410



##########
File path: src/auto_scheduler/search_policy/sketch_policy_rules.h
##########
@@ -73,84 +73,51 @@ class SketchGenerationRule {
                                                    const State& state, int 
stage_id) const = 0;
 };
 
+#define DEFINE_SKETCH_GENERATION_RULE(rule_name)                               
                  \

Review comment:
       I'd like to raise a discussion about using macro here. Although we can 
of course largely reduce the code size with this macro, it makes code tracing 
more difficult. For example, most IDE navigation cannot locate `class 
RuleSkipStage` anymore. If we want to avoid redundant lines of 
   
   ```
   std::vector<std::pair<State, int>> Apply(const SketchPolicyNode& policy, 
const State& state, 
                                              int stage_id) const final;
   ```
   
   maybe we can make it not a virtual function so that we can simply override 
it in the cc file without declaration in .h file?




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to