MCPcopy Create free account
hub / github.com/OpenDriveLab/OpenLane / __pyx_insert_code_object

Function __pyx_insert_code_object

eval/CIPO_evaluation/pycocotools/_mask.c:13495–13537  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

13493 return code_object;
13494}
13495static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object) {
13496 int pos, i;
13497 __Pyx_CodeObjectCacheEntry* entries = __pyx_code_cache.entries;
13498 if (unlikely(!code_line)) {
13499 return;
13500 }
13501 if (unlikely(!entries)) {
13502 entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Malloc(64*sizeof(__Pyx_CodeObjectCacheEntry));
13503 if (likely(entries)) {
13504 __pyx_code_cache.entries = entries;
13505 __pyx_code_cache.max_count = 64;
13506 __pyx_code_cache.count = 1;
13507 entries[0].code_line = code_line;
13508 entries[0].code_object = code_object;
13509 Py_INCREF(code_object);
13510 }
13511 return;
13512 }
13513 pos = __pyx_bisect_code_objects(__pyx_code_cache.entries, __pyx_code_cache.count, code_line);
13514 if ((pos < __pyx_code_cache.count) && unlikely(__pyx_code_cache.entries[pos].code_line == code_line)) {
13515 PyCodeObject* tmp = entries[pos].code_object;
13516 entries[pos].code_object = code_object;
13517 Py_DECREF(tmp);
13518 return;
13519 }
13520 if (__pyx_code_cache.count == __pyx_code_cache.max_count) {
13521 int new_max = __pyx_code_cache.max_count + 64;
13522 entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Realloc(
13523 __pyx_code_cache.entries, ((size_t)new_max) * sizeof(__Pyx_CodeObjectCacheEntry));
13524 if (unlikely(!entries)) {
13525 return;
13526 }
13527 __pyx_code_cache.entries = entries;
13528 __pyx_code_cache.max_count = new_max;
13529 }
13530 for (i=__pyx_code_cache.count; i>pos; i--) {
13531 entries[i] = entries[i-1];
13532 }
13533 entries[pos].code_line = code_line;
13534 entries[pos].code_object = code_object;
13535 __pyx_code_cache.count++;
13536 Py_INCREF(code_object);
13537}
13538
13539/* AddTraceback */
13540 #include "compile.h"

Callers 1

__Pyx_AddTracebackFunction · 0.85

Calls 1

Tested by

no test coverage detected