Beispiel #1
0
 def compile(self, options=()):
     try:
         nvrtc.compileProgram(self.ptr, options)
         return nvrtc.getPTX(self.ptr)
     except nvrtc.NVRTCError:
         log = nvrtc.getProgramLog(self.ptr)
         raise CompileException(log, self.src, self.name, options, 'nvrtc')
Beispiel #2
0
 def compile(self, options=(), log_stream=None):
     try:
         if self.name_expressions:
             for ker in self.name_expressions:
                 nvrtc.addAddNameExpression(self.ptr, ker)
         nvrtc.compileProgram(self.ptr, options)
         mapping = None
         if self.name_expressions:
             mapping = {}
             for ker in self.name_expressions:
                 mapping[ker] = nvrtc.getLoweredName(self.ptr, ker)
         if log_stream is not None:
             log_stream.write(nvrtc.getProgramLog(self.ptr))
         return nvrtc.getPTX(self.ptr), mapping
     except nvrtc.NVRTCError:
         log = nvrtc.getProgramLog(self.ptr)
         raise CompileException(log, self.src, self.name, options, 'nvrtc')