Fix the false generated_comment (#17563)
authorGemfield <gemfield@civilnet.cn>
Thu, 28 Feb 2019 17:37:48 +0000 (09:37 -0800)
committerFacebook Github Bot <facebook-github-bot@users.noreply.github.com>
Thu, 28 Feb 2019 17:44:08 +0000 (09:44 -0800)
Summary:
The generated_comments are wrong to below generated files:
```bash
./torch/csrc/autograd/generated/VariableType_0.cpp:3:// generated from tools/autograd/templates/VariableType_0.cpp
./torch/csrc/autograd/generated/VariableType_1.cpp:3:// generated from tools/autograd/templates/VariableType_1.cpp
./torch/csrc/autograd/generated/VariableType_2.cpp:3:// generated from tools/autograd/templates/VariableType_2.cpp
./torch/csrc/autograd/generated/VariableType_3.cpp:3:// generated from tools/autograd/templates/VariableType_3.cpp
./torch/csrc/autograd/generated/VariableType_4.cpp:3:// generated from tools/autograd/templates/VariableType_4.cpp
./torch/csrc/autograd/generated/VariableTypeEverything.cpp:3:// generated from tools/autograd/templates/VariableTypeEverything.cpp

./torch/csrc/jit/generated/register_aten_ops_0.cpp:23:// generated from tools/autograd/templates/register_aten_ops_0.cpp
./torch/csrc/jit/generated/register_aten_ops_1.cpp:23:// generated from tools/autograd/templates/register_aten_ops_1.cpp
./torch/csrc/jit/generated/register_aten_ops_2.cpp:23:// generated from tools/autograd/templates/register_aten_ops_2.cpp
```

These generated files were split to speed the compile, however, the template files are not.
After this fix, the comments will look like below:
```bash
./torch/csrc/autograd/generated/VariableType_0.cpp:3:// generated from tools/autograd/templates/VariableType.cpp
./torch/csrc/autograd/generated/VariableType_1.cpp:3:// generated from tools/autograd/templates/VariableType.cpp
......
```
Pull Request resolved: https://github.com/pytorch/pytorch/pull/17563

Differential Revision: D14260992

Pulled By: soumith

fbshipit-source-id: 038181367fa43bee87837e4170704ddff7f4d6f2

aten/src/ATen/code_template.py
tools/autograd/utils.py

index 937269a..186707c 100644 (file)
@@ -24,10 +24,11 @@ class CodeTemplate(object):
     @staticmethod
     def from_file(filename):
         with open(filename, 'r') as f:
-            return CodeTemplate(f.read())
+            return CodeTemplate(f.read(), filename)
 
-    def __init__(self, pattern):
+    def __init__(self, pattern, filename=""):
         self.pattern = pattern
+        self.filename = filename
 
     def substitute(self, env={}, **kwargs):
         def lookup(v):
index 9a799c9..3c65db8 100644 (file)
@@ -26,9 +26,8 @@ try:
 except ImportError:
     from yaml import Loader as YamlLoader
 
-
 GENERATED_COMMENT = CodeTemplate(
-    "@" + "generated from tools/autograd/templates/${filename}")
+    "@" + "generated from ${filename}")
 
 # Matches "foo" in "foo, bar" but not "foobar". Used to search for the
 # occurence of a parameter in the derivative formula
@@ -56,7 +55,7 @@ def uninplace_api_name(api_name):
 
 
 def write(dirname, name, template, env):
-    env['generated_comment'] = GENERATED_COMMENT.substitute(filename=name)
+    env['generated_comment'] = GENERATED_COMMENT.substitute(filename=template.filename)
     path = os.path.join(dirname, name)
     # See Note [Unchanging results for ninja]
     try: