Skip to content

Commit 00040d7

Browse files
committed
[mlir][sparse] fix broken asan test
TBR : delete was dropped from previous approved revision (https://reviews.llvm.org/D110790), breaking asan Differential Revision: https://reviews.llvm.org/D112779
1 parent 01b4789 commit 00040d7

File tree

1 file changed

+5
-3
lines changed

1 file changed

+5
-3
lines changed

mlir/lib/ExecutionEngine/SparseUtils.cpp

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -635,16 +635,18 @@ enum Action : uint32_t {
635635
}
636636

637637
#define IMPL_GETNEXT(NAME, V) \
638-
bool _mlir_ciface_##NAME(void *ptr, StridedMemRefType<uint64_t, 1> *iref, \
638+
bool _mlir_ciface_##NAME(void *tensor, StridedMemRefType<uint64_t, 1> *iref, \
639639
StridedMemRefType<V, 0> *vref) { \
640640
assert(iref->strides[0] == 1); \
641641
uint64_t *indx = iref->data + iref->offset; \
642642
V *value = vref->data + vref->offset; \
643643
const uint64_t isize = iref->sizes[0]; \
644-
auto iter = static_cast<SparseTensorCOO<V> *>(ptr); \
644+
auto iter = static_cast<SparseTensorCOO<V> *>(tensor); \
645645
const Element<V> *elem = iter->getNext(); \
646-
if (elem == nullptr) \
646+
if (elem == nullptr) { \
647+
delete iter; \
647648
return false; \
649+
} \
648650
for (uint64_t r = 0; r < isize; r++) \
649651
indx[r] = elem->indices[r]; \
650652
*value = elem->value; \

0 commit comments

Comments
 (0)