Coverage for cuda/bindings/_internal/nvjitlink.pyx: 73.23%

254 statements  

« prev     ^ index     » next       coverage.py v7.14.1, created at 2026-06-13 01:38 +0000

1# SPDX-FileCopyrightText: Copyright (c) 2024-2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 

2# 

3# SPDX-License-Identifier: LicenseRef-NVIDIA-SOFTWARE-LICENSE 

4# 

5# This code was automatically generated across versions from 12.0.1 to 13.3.0, generator version 0.3.1.dev1719+g565f73f4e. Do not modify it directly. 

6  

7from libc.stdint cimport intptr_t, uintptr_t 

8  

9import threading 

10from .utils import FunctionNotFoundError, NotSupportedError 

11  

12from cuda.pathfinder import load_nvidia_dynamic_lib 

13  

14  

15############################################################################### 

16# Extern 

17############################################################################### 

18  

19# You must 'from .utils import NotSupportedError' before using this template 

20  

21cdef extern from "<dlfcn.h>" nogil: 

22 void* dlopen(const char*, int) 

23 char* dlerror() 

24 void* dlsym(void*, const char*) 

25 int dlclose(void*) 

26  

27 enum: 

28 RTLD_LAZY 

29 RTLD_NOW 

30 RTLD_GLOBAL 

31 RTLD_LOCAL 

32  

33 const void* RTLD_DEFAULT 'RTLD_DEFAULT' 

34  

35cdef int get_cuda_version(): 

36 cdef void* handle = NULL 

37 cdef int err, driver_ver = 0 

38  

39 # Load driver to check version 

40 handle = dlopen('libcuda.so.1', RTLD_NOW | RTLD_GLOBAL) 

41 if handle == NULL: 

42 err_msg = dlerror() 

43 raise NotSupportedError(f'CUDA driver is not found ({err_msg.decode()})') 

44 cuDriverGetVersion = dlsym(handle, "cuDriverGetVersion") 

45 if cuDriverGetVersion == NULL: 

46 raise RuntimeError('Did not find cuDriverGetVersion symbol in libcuda.so.1') 

47 err = (<int (*)(int*) noexcept nogil>cuDriverGetVersion)(&driver_ver) 

48 if err != 0: 

49 raise RuntimeError(f'cuDriverGetVersion returned error code {err}') 

50  

51 return driver_ver 

52  

53  

54  

55############################################################################### 

56# Wrapper init 

57############################################################################### 

58  

59cdef object __symbol_lock = threading.Lock() 

60cdef bint __py_nvjitlink_init = False 

61  

62cdef void* __nvJitLinkCreate = NULL 

63cdef void* __nvJitLinkDestroy = NULL 

64cdef void* __nvJitLinkAddData = NULL 

65cdef void* __nvJitLinkAddFile = NULL 

66cdef void* __nvJitLinkComplete = NULL 

67cdef void* __nvJitLinkGetLinkedCubinSize = NULL 

68cdef void* __nvJitLinkGetLinkedCubin = NULL 

69cdef void* __nvJitLinkGetLinkedPtxSize = NULL 

70cdef void* __nvJitLinkGetLinkedPtx = NULL 

71cdef void* __nvJitLinkGetErrorLogSize = NULL 

72cdef void* __nvJitLinkGetErrorLog = NULL 

73cdef void* __nvJitLinkGetInfoLogSize = NULL 

74cdef void* __nvJitLinkGetInfoLog = NULL 

75cdef void* __nvJitLinkVersion = NULL 

76cdef void* __nvJitLinkGetLinkedLTOIRSize = NULL 

77cdef void* __nvJitLinkGetLinkedLTOIR = NULL 

78  

79  

80cdef void* load_library() except* with gil: 

81 cdef uintptr_t handle = load_nvidia_dynamic_lib("nvJitLink")._handle_uint 

82 return <void*>handle 

83  

84  

85cdef int _init_nvjitlink() except -1 nogil: 

86 global __py_nvjitlink_init 

87  

88 cdef void* handle = NULL 

89  

90 with gil, __symbol_lock: 

91 # Recheck the flag after obtaining the locks 

92 if __py_nvjitlink_init: 

93 return 0 

94  

95 # Load function 

96 global __nvJitLinkCreate 

97 __nvJitLinkCreate = dlsym(RTLD_DEFAULT, 'nvJitLinkCreate') 

98 if __nvJitLinkCreate == NULL: 

99 if handle == NULL: 

100 handle = load_library() 

101 __nvJitLinkCreate = dlsym(handle, 'nvJitLinkCreate') 

102  

103 global __nvJitLinkDestroy 

104 __nvJitLinkDestroy = dlsym(RTLD_DEFAULT, 'nvJitLinkDestroy') 

105 if __nvJitLinkDestroy == NULL: 

106 if handle == NULL: 

107 handle = load_library() 

108 __nvJitLinkDestroy = dlsym(handle, 'nvJitLinkDestroy') 

109  

110 global __nvJitLinkAddData 

111 __nvJitLinkAddData = dlsym(RTLD_DEFAULT, 'nvJitLinkAddData') 

112 if __nvJitLinkAddData == NULL: 

113 if handle == NULL: 

114 handle = load_library() 

115 __nvJitLinkAddData = dlsym(handle, 'nvJitLinkAddData') 

116  

117 global __nvJitLinkAddFile 

118 __nvJitLinkAddFile = dlsym(RTLD_DEFAULT, 'nvJitLinkAddFile') 

119 if __nvJitLinkAddFile == NULL: 

120 if handle == NULL: 

121 handle = load_library() 

122 __nvJitLinkAddFile = dlsym(handle, 'nvJitLinkAddFile') 

123  

124 global __nvJitLinkComplete 

125 __nvJitLinkComplete = dlsym(RTLD_DEFAULT, 'nvJitLinkComplete') 

126 if __nvJitLinkComplete == NULL: 

127 if handle == NULL: 

128 handle = load_library() 

129 __nvJitLinkComplete = dlsym(handle, 'nvJitLinkComplete') 

130  

131 global __nvJitLinkGetLinkedCubinSize 

132 __nvJitLinkGetLinkedCubinSize = dlsym(RTLD_DEFAULT, 'nvJitLinkGetLinkedCubinSize') 

133 if __nvJitLinkGetLinkedCubinSize == NULL: 

134 if handle == NULL: 

135 handle = load_library() 

136 __nvJitLinkGetLinkedCubinSize = dlsym(handle, 'nvJitLinkGetLinkedCubinSize') 

137  

138 global __nvJitLinkGetLinkedCubin 

139 __nvJitLinkGetLinkedCubin = dlsym(RTLD_DEFAULT, 'nvJitLinkGetLinkedCubin') 

140 if __nvJitLinkGetLinkedCubin == NULL: 

141 if handle == NULL: 

142 handle = load_library() 

143 __nvJitLinkGetLinkedCubin = dlsym(handle, 'nvJitLinkGetLinkedCubin') 

144  

145 global __nvJitLinkGetLinkedPtxSize 

146 __nvJitLinkGetLinkedPtxSize = dlsym(RTLD_DEFAULT, 'nvJitLinkGetLinkedPtxSize') 

147 if __nvJitLinkGetLinkedPtxSize == NULL: 

148 if handle == NULL: 

149 handle = load_library() 

150 __nvJitLinkGetLinkedPtxSize = dlsym(handle, 'nvJitLinkGetLinkedPtxSize') 

151  

152 global __nvJitLinkGetLinkedPtx 

153 __nvJitLinkGetLinkedPtx = dlsym(RTLD_DEFAULT, 'nvJitLinkGetLinkedPtx') 

154 if __nvJitLinkGetLinkedPtx == NULL: 

155 if handle == NULL: 

156 handle = load_library() 

157 __nvJitLinkGetLinkedPtx = dlsym(handle, 'nvJitLinkGetLinkedPtx') 

158  

159 global __nvJitLinkGetErrorLogSize 

160 __nvJitLinkGetErrorLogSize = dlsym(RTLD_DEFAULT, 'nvJitLinkGetErrorLogSize') 

161 if __nvJitLinkGetErrorLogSize == NULL: 

162 if handle == NULL: 

163 handle = load_library() 1a45679!#$%'()*+,-.0123bcdeqrstfghi?=@

164 __nvJitLinkGetErrorLogSize = dlsym(handle, 'nvJitLinkGetErrorLogSize') 145679!#$%'()*+,-.0123bcdeqrstfghi?=@

165  

166 global __nvJitLinkGetErrorLog 

167 __nvJitLinkGetErrorLog = dlsym(RTLD_DEFAULT, 'nvJitLinkGetErrorLog') 

168 if __nvJitLinkGetErrorLog == NULL: 

169 if handle == NULL: 

170 handle = load_library() 

171 __nvJitLinkGetErrorLog = dlsym(handle, 'nvJitLinkGetErrorLog') 

172  

173 global __nvJitLinkGetInfoLogSize 

174 __nvJitLinkGetInfoLogSize = dlsym(RTLD_DEFAULT, 'nvJitLinkGetInfoLogSize') 

175 if __nvJitLinkGetInfoLogSize == NULL: 

176 if handle == NULL: 

177 handle = load_library() 

178 __nvJitLinkGetInfoLogSize = dlsym(handle, 'nvJitLinkGetInfoLogSize') 

179  

180 global __nvJitLinkGetInfoLog 

181 __nvJitLinkGetInfoLog = dlsym(RTLD_DEFAULT, 'nvJitLinkGetInfoLog') 

182 if __nvJitLinkGetInfoLog == NULL: 

183 if handle == NULL: 

184 handle = load_library() 

185 __nvJitLinkGetInfoLog = dlsym(handle, 'nvJitLinkGetInfoLog') 

186  

187 global __nvJitLinkVersion 

188 __nvJitLinkVersion = dlsym(RTLD_DEFAULT, 'nvJitLinkVersion') 

189 if __nvJitLinkVersion == NULL: 

190 if handle == NULL: 

191 handle = load_library() 

192 __nvJitLinkVersion = dlsym(handle, 'nvJitLinkVersion') 

193  

194 global __nvJitLinkGetLinkedLTOIRSize 

195 __nvJitLinkGetLinkedLTOIRSize = dlsym(RTLD_DEFAULT, 'nvJitLinkGetLinkedLTOIRSize') 

196 if __nvJitLinkGetLinkedLTOIRSize == NULL: 

197 if handle == NULL: 

198 handle = load_library() 

199 __nvJitLinkGetLinkedLTOIRSize = dlsym(handle, 'nvJitLinkGetLinkedLTOIRSize') 

200  

201 global __nvJitLinkGetLinkedLTOIR 

202 __nvJitLinkGetLinkedLTOIR = dlsym(RTLD_DEFAULT, 'nvJitLinkGetLinkedLTOIR') 

203 if __nvJitLinkGetLinkedLTOIR == NULL: 

204 if handle == NULL: 

205 handle = load_library() 

206 __nvJitLinkGetLinkedLTOIR = dlsym(handle, 'nvJitLinkGetLinkedLTOIR') 

207  

208 __py_nvjitlink_init = True 

209 return 0 

210  

211  

212cdef inline int _check_or_init_nvjitlink() except -1 nogil: 

213 if __py_nvjitlink_init: 2a 8 u / v j w x k y l z A B m C D E F G H I J K L M N O [ P : Q n R 4 5 6 7 9 ! # $ % ' ( ) * + , - . 0 1 2 3 b c d e q r s t f g h i ? = @ ; S T U V W X Y o p Z ] ^ _ ` { | } ~ abbbcbdbebfbgbhbibjbkblbmbnbobpb

214 return 0 2a 8 u / v j w x k y l z A B m C D E F G H I J K L M N O [ P : Q n R 4 5 6 7 9 ! # $ % ' ( ) * + , - . 0 1 2 3 b c d e q r s t f g h i ? = @ ; S T U V W X Y o p Z ] ^ _ ` { | } ~ abbbcbdbebfbgbhbibjbkblbmbnbobpb

215  

216 return _init_nvjitlink() 

217  

218cdef dict func_ptrs = None 

219  

220  

221cpdef dict _inspect_function_pointers(): 

222 global func_ptrs 

223 if func_ptrs is not None: 

224 return func_ptrs 

225  

226 _check_or_init_nvjitlink() 

227 cdef dict data = {} 

228  

229 global __nvJitLinkCreate 

230 data["__nvJitLinkCreate"] = <intptr_t>__nvJitLinkCreate 

231  

232 global __nvJitLinkDestroy 

233 data["__nvJitLinkDestroy"] = <intptr_t>__nvJitLinkDestroy 

234  

235 global __nvJitLinkAddData 

236 data["__nvJitLinkAddData"] = <intptr_t>__nvJitLinkAddData 

237  

238 global __nvJitLinkAddFile 

239 data["__nvJitLinkAddFile"] = <intptr_t>__nvJitLinkAddFile 

240  

241 global __nvJitLinkComplete 

242 data["__nvJitLinkComplete"] = <intptr_t>__nvJitLinkComplete 

243  

244 global __nvJitLinkGetLinkedCubinSize 

245 data["__nvJitLinkGetLinkedCubinSize"] = <intptr_t>__nvJitLinkGetLinkedCubinSize 1a45679!#$%'()*+,-.0123bcdeqrstfghi?@

246  

247 global __nvJitLinkGetLinkedCubin 

248 data["__nvJitLinkGetLinkedCubin"] = <intptr_t>__nvJitLinkGetLinkedCubin 

249  

250 global __nvJitLinkGetLinkedPtxSize 

251 data["__nvJitLinkGetLinkedPtxSize"] = <intptr_t>__nvJitLinkGetLinkedPtxSize 

252  

253 global __nvJitLinkGetLinkedPtx 

254 data["__nvJitLinkGetLinkedPtx"] = <intptr_t>__nvJitLinkGetLinkedPtx 

255  

256 global __nvJitLinkGetErrorLogSize 

257 data["__nvJitLinkGetErrorLogSize"] = <intptr_t>__nvJitLinkGetErrorLogSize 

258  

259 global __nvJitLinkGetErrorLog 

260 data["__nvJitLinkGetErrorLog"] = <intptr_t>__nvJitLinkGetErrorLog 

261  

262 global __nvJitLinkGetInfoLogSize 

263 data["__nvJitLinkGetInfoLogSize"] = <intptr_t>__nvJitLinkGetInfoLogSize 

264  

265 global __nvJitLinkGetInfoLog 

266 data["__nvJitLinkGetInfoLog"] = <intptr_t>__nvJitLinkGetInfoLog 1a4567bcdeqrstfghi

267  

268 global __nvJitLinkVersion 

269 data["__nvJitLinkVersion"] = <intptr_t>__nvJitLinkVersion 1a4567bcdeqrstfghi

270  

271 global __nvJitLinkGetLinkedLTOIRSize 

272 data["__nvJitLinkGetLinkedLTOIRSize"] = <intptr_t>__nvJitLinkGetLinkedLTOIRSize 

273  

274 global __nvJitLinkGetLinkedLTOIR 

275 data["__nvJitLinkGetLinkedLTOIR"] = <intptr_t>__nvJitLinkGetLinkedLTOIR 1a9!#$

276  

277 func_ptrs = data 

278 return data 

279  

280  

281cpdef _inspect_function_pointer(str name): 

282 global func_ptrs 

283 if func_ptrs is None: 

284 func_ptrs = _inspect_function_pointers() 

285 return func_ptrs[name] 1a45679!#$%'()0123bcdeqrstfghi

286  

287  

288############################################################################### 

289# Wrapper functions 

290############################################################################### 

291  

292cdef nvJitLinkResult _nvJitLinkCreate(nvJitLinkHandle* handle, uint32_t numOptions, const char** options) except?_NVJITLINKRESULT_INTERNAL_LOADING_ERROR nogil: 

293 global __nvJitLinkCreate 

294 _check_or_init_nvjitlink() 18u/vjwxkylzABmCDEFGHIJKLMNO[P:QnR45679!#$%'()*+,-.0123bcdeqrstfghi?@;STUVWXYopZ

295 if __nvJitLinkCreate == NULL: 18u/vjwxkylzABmCDEFGHIJKLMNO[P:QnR45679!#$%'()*+,-.0123bcdeqrstfghi?@;STUVWXYopZ

296 with gil: 1qrst

297 raise FunctionNotFoundError("function nvJitLinkCreate is not found") 

298 return (<nvJitLinkResult (*)(nvJitLinkHandle*, uint32_t, const char**) noexcept nogil>__nvJitLinkCreate)( 18u/vjwxkylzABmCDEFGHIJKLMNO[P:QnR45679!#$%'()*+,-.0123bcdeqrstfghi?@;STUVWXYopZ

299 handle, numOptions, options) 

300  

301  

302cdef nvJitLinkResult _nvJitLinkDestroy(nvJitLinkHandle* handle) except?_NVJITLINKRESULT_INTERNAL_LOADING_ERROR nogil: 

303 global __nvJitLinkDestroy 

304 _check_or_init_nvjitlink() 18u/vjwxkylzABmCDEFGHIJKLMNOP:QnR45679!#$%'()*+,-.0123bcdeqrstfghi;STUVWXYopZ

305 if __nvJitLinkDestroy == NULL: 18u/vjwxkylzABmCDEFGHIJKLMNOP:QnR45679!#$%'()*+,-.0123bcdeqrstfghi;STUVWXYopZ

306 with gil: 1qrst

307 raise FunctionNotFoundError("function nvJitLinkDestroy is not found") 

308 return (<nvJitLinkResult (*)(nvJitLinkHandle*) noexcept nogil>__nvJitLinkDestroy)( 18u/vjwxkylzABmCDEFGHIJKLMNOP:QnR45679!#$%'()*+,-.0123bcdeqrstfghi;STUVWXYopZ

309 handle) 

310  

311  

312cdef nvJitLinkResult _nvJitLinkAddData(nvJitLinkHandle handle, nvJitLinkInputType inputType, const void* data, size_t size, const char* name) except?_NVJITLINKRESULT_INTERNAL_LOADING_ERROR nogil: 

313 global __nvJitLinkAddData 

314 _check_or_init_nvjitlink() 18u/vjwxkylzABmCDEFGHIJKLMNOP:QnR4567bcdeqrstfghi;STUVWXYopZ

315 if __nvJitLinkAddData == NULL: 18u/vjwxkylzABmCDEFGHIJKLMNOP:QnR4567bcdeqrstfghi;STUVWXYopZ

316 with gil: 1fghi

317 raise FunctionNotFoundError("function nvJitLinkAddData is not found") 

318 return (<nvJitLinkResult (*)(nvJitLinkHandle, nvJitLinkInputType, const void*, size_t, const char*) noexcept nogil>__nvJitLinkAddData)( 18u/vjwxkylzABmCDEFGHIJKLMNOP:QnR4567bcdeqrstfghi;STUVWXYopZ

319 handle, inputType, data, size, name) 

320  

321  

322cdef nvJitLinkResult _nvJitLinkAddFile(nvJitLinkHandle handle, nvJitLinkInputType inputType, const char* fileName) except?_NVJITLINKRESULT_INTERNAL_LOADING_ERROR nogil: 

323 global __nvJitLinkAddFile 

324 _check_or_init_nvjitlink() 19!#$

325 if __nvJitLinkAddFile == NULL: 19!#$fghi

326 with gil: 1fghi

327 raise FunctionNotFoundError("function nvJitLinkAddFile is not found") 

328 return (<nvJitLinkResult (*)(nvJitLinkHandle, nvJitLinkInputType, const char*) noexcept nogil>__nvJitLinkAddFile)( 19!#$

329 handle, inputType, fileName) 

330  

331  

332cdef nvJitLinkResult _nvJitLinkComplete(nvJitLinkHandle handle) except?_NVJITLINKRESULT_INTERNAL_LOADING_ERROR nogil: 

333 global __nvJitLinkComplete 

334 _check_or_init_nvjitlink() 18uvjwxkylzABmCDEFGHIJKLMNOPQnR45679!#$%'()0123bcdeqrstfghiSTUVWXYopZ

335 if __nvJitLinkComplete == NULL: 18uvjwxkylzABmCDEFGHIJKLMNOPQnR45679!#$%'()0123bcdeqrstfghiSTUVWXYopZ

336 with gil: 10123

337 raise FunctionNotFoundError("function nvJitLinkComplete is not found") 

338 return (<nvJitLinkResult (*)(nvJitLinkHandle) noexcept nogil>__nvJitLinkComplete)( 18uvjwxkylzABmCDEFGHIJKLMNOPQnR45679!#$%'()0123bcdeqrstfghiSTUVWXYopZ

339 handle) 

340  

341  

342cdef nvJitLinkResult _nvJitLinkGetLinkedCubinSize(nvJitLinkHandle handle, size_t* size) except?_NVJITLINKRESULT_INTERNAL_LOADING_ERROR nogil: 

343 global __nvJitLinkGetLinkedCubinSize 

344 _check_or_init_nvjitlink() 1uvjwxkylzABmCDEFGHIJKLMNOPQRqrstSTUVWXYopZ

345 if __nvJitLinkGetLinkedCubinSize == NULL: 1uvjwxkylzABmCDEFGHIJKLMNOPQR0123qrstSTUVWXYopZ

346 with gil: 10123

347 raise FunctionNotFoundError("function nvJitLinkGetLinkedCubinSize is not found") 

348 return (<nvJitLinkResult (*)(nvJitLinkHandle, size_t*) noexcept nogil>__nvJitLinkGetLinkedCubinSize)( 1uvjwxkylzABmCDEFGHIJKLMNOPQRqrstSTUVWXYopZ

349 handle, size) 

350  

351  

352cdef nvJitLinkResult _nvJitLinkGetLinkedCubin(nvJitLinkHandle handle, void* cubin) except?_NVJITLINKRESULT_INTERNAL_LOADING_ERROR nogil: 

353 global __nvJitLinkGetLinkedCubin 

354 _check_or_init_nvjitlink() 1uvjwxkylzABmCDEFGHIJKLMNOPQRqrstSTUVWXYopZ

355 if __nvJitLinkGetLinkedCubin == NULL: 1uvjwxkylzABmCDEFGHIJKLMNOPQRbcdeqrstSTUVWXYopZ

356 with gil: 1bcde

357 raise FunctionNotFoundError("function nvJitLinkGetLinkedCubin is not found") 

358 return (<nvJitLinkResult (*)(nvJitLinkHandle, void*) noexcept nogil>__nvJitLinkGetLinkedCubin)( 1uvjwxkylzABmCDEFGHIJKLMNOPQRqrstSTUVWXYopZ

359 handle, cubin) 

360  

361  

362cdef nvJitLinkResult _nvJitLinkGetLinkedPtxSize(nvJitLinkHandle handle, size_t* size) except?_NVJITLINKRESULT_INTERNAL_LOADING_ERROR nogil: 

363 global __nvJitLinkGetLinkedPtxSize 

364 _check_or_init_nvjitlink() 1nfghi

365 if __nvJitLinkGetLinkedPtxSize == NULL: 1nbcdefghi

366 with gil: 1bcde

367 raise FunctionNotFoundError("function nvJitLinkGetLinkedPtxSize is not found") 

368 return (<nvJitLinkResult (*)(nvJitLinkHandle, size_t*) noexcept nogil>__nvJitLinkGetLinkedPtxSize)( 1nfghi

369 handle, size) 

370  

371  

372cdef nvJitLinkResult _nvJitLinkGetLinkedPtx(nvJitLinkHandle handle, char* ptx) except?_NVJITLINKRESULT_INTERNAL_LOADING_ERROR nogil: 

373 global __nvJitLinkGetLinkedPtx 

374 _check_or_init_nvjitlink() 1nfghi

375 if __nvJitLinkGetLinkedPtx == NULL: 1nfghi=

376 with gil: 1=

377 raise FunctionNotFoundError("function nvJitLinkGetLinkedPtx is not found") 

378 return (<nvJitLinkResult (*)(nvJitLinkHandle, char*) noexcept nogil>__nvJitLinkGetLinkedPtx)( 1nfghi

379 handle, ptx) 

380  

381  

382cdef nvJitLinkResult _nvJitLinkGetErrorLogSize(nvJitLinkHandle handle, size_t* size) except?_NVJITLINKRESULT_INTERNAL_LOADING_ERROR nogil: 

383 global __nvJitLinkGetErrorLogSize 

384 _check_or_init_nvjitlink() 18uvjwxkylzABmCDEFGHIJKLMNOPQnR0123STUVWXYopZ

385 if __nvJitLinkGetErrorLogSize == NULL: 18uvjwxkylzABmCDEFGHIJKLMNOPQnR0123STUVWXYopZ

386 with gil: 

387 raise FunctionNotFoundError("function nvJitLinkGetErrorLogSize is not found") 

388 return (<nvJitLinkResult (*)(nvJitLinkHandle, size_t*) noexcept nogil>__nvJitLinkGetErrorLogSize)( 18uvjwxkylzABmCDEFGHIJKLMNOPQnR0123STUVWXYopZ

389 handle, size) 

390  

391  

392cdef nvJitLinkResult _nvJitLinkGetErrorLog(nvJitLinkHandle handle, char* log) except?_NVJITLINKRESULT_INTERNAL_LOADING_ERROR nogil: 

393 global __nvJitLinkGetErrorLog 

394 _check_or_init_nvjitlink() 180123

395 if __nvJitLinkGetErrorLog == NULL: 180123

396 with gil: 

397 raise FunctionNotFoundError("function nvJitLinkGetErrorLog is not found") 

398 return (<nvJitLinkResult (*)(nvJitLinkHandle, char*) noexcept nogil>__nvJitLinkGetErrorLog)( 180123

399 handle, log) 

400  

401  

402cdef nvJitLinkResult _nvJitLinkGetInfoLogSize(nvJitLinkHandle handle, size_t* size) except?_NVJITLINKRESULT_INTERNAL_LOADING_ERROR nogil: 

403 global __nvJitLinkGetInfoLogSize 

404 _check_or_init_nvjitlink() 1uvjwxkylzABmCDEFGHIJKLMNOPQnRbcdeSTUVWXYopZ

405 if __nvJitLinkGetInfoLogSize == NULL: 1uvjwxkylzABmCDEFGHIJKLMNOPQnRbcdeSTUVWXYopZ

406 with gil: 

407 raise FunctionNotFoundError("function nvJitLinkGetInfoLogSize is not found") 

408 return (<nvJitLinkResult (*)(nvJitLinkHandle, size_t*) noexcept nogil>__nvJitLinkGetInfoLogSize)( 1uvjwxkylzABmCDEFGHIJKLMNOPQnRbcdeSTUVWXYopZ

409 handle, size) 

410  

411  

412cdef nvJitLinkResult _nvJitLinkGetInfoLog(nvJitLinkHandle handle, char* log) except?_NVJITLINKRESULT_INTERNAL_LOADING_ERROR nogil: 

413 global __nvJitLinkGetInfoLog 

414 _check_or_init_nvjitlink() 1jklmnbcdeop

415 if __nvJitLinkGetInfoLog == NULL: 1jklmnbcdeop

416 with gil: 

417 raise FunctionNotFoundError("function nvJitLinkGetInfoLog is not found") 

418 return (<nvJitLinkResult (*)(nvJitLinkHandle, char*) noexcept nogil>__nvJitLinkGetInfoLog)( 1jklmnbcdeop

419 handle, log) 

420  

421  

422cdef nvJitLinkResult _nvJitLinkVersion(unsigned int* major, unsigned int* minor) except?_NVJITLINKRESULT_INTERNAL_LOADING_ERROR nogil: 

423 global __nvJitLinkVersion 

424 _check_or_init_nvjitlink() 2a = ] ^ _ ` { | } ~ abbbcbdbebfbgbhbibjbkblbmbnbobpb

425 if __nvJitLinkVersion == NULL: 2a = ] ^ _ ` { | } ~ abbbcbdbebfbgbhbibjbkblbmbnbobpb

426 with gil: 

427 raise FunctionNotFoundError("function nvJitLinkVersion is not found") 

428 return (<nvJitLinkResult (*)(unsigned int*, unsigned int*) noexcept nogil>__nvJitLinkVersion)( 2a = ] ^ _ ` { | } ~ abbbcbdbebfbgbhbibjbkblbmbnbobpb

429 major, minor) 

430  

431  

432cdef nvJitLinkResult _nvJitLinkGetLinkedLTOIRSize(nvJitLinkHandle handle, size_t* size) except?_NVJITLINKRESULT_INTERNAL_LOADING_ERROR nogil: 

433 global __nvJitLinkGetLinkedLTOIRSize 

434 _check_or_init_nvjitlink() 

435 if __nvJitLinkGetLinkedLTOIRSize == NULL: 

436 with gil: 

437 raise FunctionNotFoundError("function nvJitLinkGetLinkedLTOIRSize is not found") 

438 return (<nvJitLinkResult (*)(nvJitLinkHandle, size_t*) noexcept nogil>__nvJitLinkGetLinkedLTOIRSize)( 

439 handle, size) 

440  

441  

442cdef nvJitLinkResult _nvJitLinkGetLinkedLTOIR(nvJitLinkHandle handle, void* ltoir) except?_NVJITLINKRESULT_INTERNAL_LOADING_ERROR nogil: 

443 global __nvJitLinkGetLinkedLTOIR 

444 _check_or_init_nvjitlink() 

445 if __nvJitLinkGetLinkedLTOIR == NULL: 

446 with gil: 

447 raise FunctionNotFoundError("function nvJitLinkGetLinkedLTOIR is not found") 

448 return (<nvJitLinkResult (*)(nvJitLinkHandle, void*) noexcept nogil>__nvJitLinkGetLinkedLTOIR)( 

449 handle, ltoir)