[Libclc-dev] [PATCH v2 2/2] configure: Remove cl_khr_fp64 for devices that don't support doubles

Jan Vesely jan.vesely at rutgers.edu
Sat Jun 6 14:36:44 PDT 2015


Also remove definitions if provided by clang (3.7+)
This halves the size of {cedar,barts}-r600--.bc
All other binaries are identical.

Signed-off-by: Jan Vesely <jan.vesely at rutgers.edu>
---
again, did not test on LLVM 3.6, feedback welcome

 configure.py | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/configure.py b/configure.py
index 0f41699..1025ae2 100755
--- a/configure.py
+++ b/configure.py
@@ -91,16 +91,16 @@ if not cxx_compiler:
 available_targets = {
   'r600--' : { 'devices' :
                [{'gpu' : 'cedar',   'aliases' : ['palm', 'sumo', 'sumo2', 'redwood', 'juniper'],
-                 'defines' : {'LLVM3.6':['cl_khr_fp64'], 'LLVM3.7':['cl_khr_fp64']}},
+                 'defines' : {}},
                 {'gpu' : 'cypress', 'aliases' : ['hemlock'],
-                 'defines' : {'LLVM3.6':['cl_khr_fp64'], 'LLVM3.7':['cl_khr_fp64']}},
+                 'defines' : {'LLVM3.6':['cl_khr_fp64']}},
                 {'gpu' : 'barts',   'aliases' : ['turks', 'caicos'],
-                 'defines' : {'LLVM3.6':['cl_khr_fp64'], 'LLVM3.7':['cl_khr_fp64']}},
+                 'defines' : {}},
                 {'gpu' : 'cayman',  'aliases' : ['aruba'],
-                 'defines' : {'LLVM3.6':['cl_khr_fp64'], 'LLVM3.7':['cl_khr_fp64']}} ]},
+                 'defines' : {'LLVM3.6':['cl_khr_fp64']}} ]},
   'amdgcn--': { 'devices' :
                 [{'gpu' : 'tahiti', 'aliases' : ['pitcairn', 'verde', 'oland', 'hainan', 'bonaire', 'kabini', 'kaveri', 'hawaii','mullins'],
-                 'defines' : {'LLVM3.6':['cl_khr_fp64'], 'LLVM3.7':['cl_khr_fp64']}} ]},
+                 'defines' : {'LLVM3.6':['cl_khr_fp64']}} ]},
   'nvptx--'   : { 'devices' : [{'gpu' : '', 'aliases' : [],
                                 'defines' : {'all' : ['cl_khr_fp64']}}]},
   'nvptx64--' : { 'devices' : [{'gpu' : '', 'aliases' : [],
-- 
2.4.2





More information about the Libclc-dev mailing list