summaryrefslogtreecommitdiff
path: root/generated_tests
diff options
context:
space:
mode:
authorDylan Baker <dylan@pnwbakers.com>2016-06-30 15:18:56 -0700
committerDylan Baker <dylan@pnwbakers.com>2016-08-05 10:45:02 -0700
commit9c53a8d96313ccd0836e94e401748b9a105ca8d1 (patch)
tree35f6f234530bb8cbefcbad6312ba4d3d4ee5afc3 /generated_tests
parent5207d4c0c373f46d9a54f03f1fa87c52f2a8e1ea (diff)
Generators/genclbuiltins: Use open as context manager to ensure files are closed
Currently there are a good number of files that aren't closed because the call to the close function is in the wrong loop level. While moving it in one level would solve the problem, using a context manager is better style and ensures that the file is closed. This error was spotted by py.test. Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
Diffstat (limited to 'generated_tests')
-rw-r--r--generated_tests/genclbuiltins.py80
1 files changed, 39 insertions, 41 deletions
diff --git a/generated_tests/genclbuiltins.py b/generated_tests/genclbuiltins.py
index f907ee8c6..338914cb9 100644
--- a/generated_tests/genclbuiltins.py
+++ b/generated_tests/genclbuiltins.py
@@ -436,48 +436,46 @@ def gen(types, minVersions, functions, testDefs, dirName):
fileName = os.path.join(dirName, fileName)
- f = open(fileName, 'w')
- print(fileName)
- # Write the file header
- f.write('/*!\n' +
- '[config]\n' +
- 'name: Test '+dataType+' '+fnName+' built-in on CL 1.1\n' +
- 'clc_version_min: '+str(clcVersionMin)+'\n' +
- 'dimensions: 1\n'
- )
- if (dataType == 'double'):
- f.write('require_device_extensions: cl_khr_fp64\n')
-
- # Blank line to provide separation between config header and tests
- f.write('\n')
-
- # Write all tests for the built-in function
- tests = functionDef['values']
- argCount = len(functionDef['arg_types'])
- fnType = functionDef['function_type']
-
- outputValues = tests[0]
- numTests = len(outputValues)
-
- # Handle all available scalar/vector widths
- sizes = sorted(VEC_WIDTHS)
- sizes.insert(0, 1) # Add 1-wide scalar to the vector widths
- for vecSize in sizes:
- if (getNumOutArgs(functionDef) == 1):
- print_test(f, fnName, dataType, functionDef, tests,
- numTests, vecSize, fnType)
- else:
- for loc in ['_private', '_local', '_global']:
- print_test(f, fnName + loc, dataType, functionDef, tests,
+ with open(fileName, 'w') as f:
+ print(fileName)
+ # Write the file header
+ f.write('/*!\n' +
+ '[config]\n' +
+ 'name: Test '+dataType+' '+fnName+' built-in on CL 1.1\n' +
+ 'clc_version_min: '+str(clcVersionMin)+'\n' +
+ 'dimensions: 1\n'
+ )
+ if (dataType == 'double'):
+ f.write('require_device_extensions: cl_khr_fp64\n')
+
+ # Blank line to provide separation between config header and tests
+ f.write('\n')
+
+ # Write all tests for the built-in function
+ tests = functionDef['values']
+ argCount = len(functionDef['arg_types'])
+ fnType = functionDef['function_type']
+
+ outputValues = tests[0]
+ numTests = len(outputValues)
+
+ # Handle all available scalar/vector widths
+ sizes = sorted(VEC_WIDTHS)
+ sizes.insert(0, 1) # Add 1-wide scalar to the vector widths
+ for vecSize in sizes:
+ if (getNumOutArgs(functionDef) == 1):
+ print_test(f, fnName, dataType, functionDef, tests,
numTests, vecSize, fnType)
+ else:
+ for loc in ['_private', '_local', '_global']:
+ print_test(f, fnName + loc, dataType, functionDef, tests,
+ numTests, vecSize, fnType)
- # Terminate the header section
- f.write('!*/\n\n')
-
- if (dataType == 'double'):
- f.write('#pragma OPENCL EXTENSION cl_khr_fp64 : enable\n\n')
+ # Terminate the header section
+ f.write('!*/\n\n')
- # Generate the actual kernels
- generate_kernels(f, dataType, fnName, functionDef)
+ if (dataType == 'double'):
+ f.write('#pragma OPENCL EXTENSION cl_khr_fp64 : enable\n\n')
- f.close()
+ # Generate the actual kernels
+ generate_kernels(f, dataType, fnName, functionDef)