Repository Analysis

microsoft/mimalloc

mimalloc is a compact general purpose allocator with excellent performance.

6.1 Low AI signal View on GitHub
6.1
Adjusted Score
6.1
Raw Score
100%
Time Factor
2026-05-08
Last Push
13,021
Stars
C
Language
47,339
Lines of Code
248
Files
221
Pattern Hits
2026-05-31
Scan Date

Score History

Severity Breakdown

CRITICAL 2HIGH 0MEDIUM 32LOW 187

Pattern Findings

221 matches across 5 categories. Click a row to expand file-level details.

Over-Commented Block187 hits · 167 pts
SeverityFileLineSnippet
LOWtest/main-override.cpp1#include <stdlib.h>
LOWtest/test-stress.c21#include <stdbool.h>
LOWtest/test-stress.c61#define custom_free(p) free(p)
LOWtest/main-override-static.c41 mi_version();
LOWtest/main-override-static.c361 };
LOWtest/test-api.c21we therefore test the API over various inputs. Please add more tests :-)
LOWinclude/mimalloc.h1/* ----------------------------------------------------------------------------
LOWinclude/mimalloc.h21 #define mi_attr_noexcept throw()
LOWinclude/mimalloc.h41 #define mi_decl_export
LOWinclude/mimalloc.h61 #define mi_attr_alloc_align(p)
LOWinclude/mimalloc.h81 #define mi_attr_alloc_size2(s1,s2) __attribute__((alloc_size(s1,s2)))
LOWinclude/mimalloc.h361#define mi_reallocn_tp(p,tp,n) ((tp*)mi_reallocn(p,n,sizeof(tp)))
LOWinclude/mimalloc.h381#define mi_theap_malloc(hp,sz) mi_heap_malloc(hp,sz)
LOWinclude/mimalloc.h501
LOWinclude/mimalloc-override.h21#define malloc(n) mi_malloc(n)
LOWinclude/mimalloc-override.h41
LOWinclude/mimalloc-override.h61#define _aligned_recalloc(p,c,n,a) mi_aligned_recalloc(p,c,n,a)
LOWinclude/mimalloc-new-delete.h1/* ----------------------------------------------------------------------------
LOWinclude/mimalloc-new-delete.h21#if defined(__cplusplus)
LOWinclude/mimalloc/internal.h21// Compiler defines
LOWinclude/mimalloc/internal.h41#define mi_decl_cold
LOWinclude/mimalloc/internal.h61#define mi_decl_cold
LOWinclude/mimalloc/internal.h81#endif
LOWinclude/mimalloc/internal.h301/* -----------------------------------------------------------
LOWinclude/mimalloc/internal.h321#define EOVERFLOW (75)
LOWinclude/mimalloc/internal.h341#endif
LOWinclude/mimalloc/internal.h361#define MI_INIT4(x) x(),x(),x(),x()
LOWinclude/mimalloc/internal.h441
LOWinclude/mimalloc/internal.h1081static inline size_t mi_popcount(size_t x) {
LOWinclude/mimalloc/types.h1/* ----------------------------------------------------------------------------
LOWinclude/mimalloc/types.h21// using plain "page" for mimalloc pages (`mi_page_t`).
LOWinclude/mimalloc/types.h41// ------------------------------------------------------
LOWinclude/mimalloc/types.h61// #define MI_SECURE 5 // guard page at the end of each mimalloc page (expensive!) (`-DMI_SECURE_FULL=ON`)
LOWinclude/mimalloc/types.h81#define MI_GUARDED 1
LOWinclude/mimalloc/types.h101
LOWinclude/mimalloc/types.h121// p == (void*)((intptr_t)p))
LOWinclude/mimalloc/types.h141# define MI_SIZE_SHIFT (2)
LOWinclude/mimalloc/types.h161#define MI_KiB (MI_ZU(1024))
LOWinclude/mimalloc/types.h181#endif
LOWinclude/mimalloc/types.h201#define MI_SMALL_OBJ_SIZE_MAX (MI_SMALL_PAGE_SIZE/8) // 8 KiB on 64-bit
LOWinclude/mimalloc/types.h221
LOWinclude/mimalloc/types.h281 struct {
LOWinclude/mimalloc/types.h301//
LOWinclude/mimalloc/types.h381// size. If it is equal we have the most fine grained
LOWinclude/mimalloc/types.h441 } mem;
LOWinclude/mimalloc/types.h501} mi_segment_t;
LOWinclude/mimalloc/types.h641#if !defined(MI_DEBUG_UNINIT)
LOWinclude/mimalloc/types.h661#endif
LOWinclude/mimalloc/types.h681
LOWinclude/mimalloc/track.h41 #define mi_track_mem_undefined(p,size)
LOWinclude/mimalloc/track.h61#define mi_track_mem_noaccess(p,size) VALGRIND_MAKE_MEM_NOACCESS(p,size)
LOWinclude/mimalloc/track.h81#define MI_TRACK_ENABLED 1
LOWinclude/mimalloc/track.h101
LOWinclude/mimalloc/track.h121#endif
LOWinclude/mimalloc/prim.h1/* ----------------------------------------------------------------------------
LOWinclude/mimalloc/prim.h41// Allocate OS memory. Return NULL on error.
LOWinclude/mimalloc/prim.h61
LOWinclude/mimalloc/prim.h121
LOWinclude/mimalloc/prim.h241#endif
LOWinclude/mimalloc/prim.h341We try to circumvent this in an efficient way:
127 more matches not shown…
Decorative Section Separators30 hits · 96 pts
SeverityFileLineSnippet
MEDIUMCMakeLists.txt105# -----------------------------------------------------------------------------
MEDIUMCMakeLists.txt107# -----------------------------------------------------------------------------
MEDIUMCMakeLists.txt164# -----------------------------------------------------------------------------
MEDIUMCMakeLists.txt166# -----------------------------------------------------------------------------
MEDIUMCMakeLists.txt543# -----------------------------------------------------------------------------
MEDIUMCMakeLists.txt545# -----------------------------------------------------------------------------
MEDIUMCMakeLists.txt608# -----------------------------------------------------------------------------
MEDIUMCMakeLists.txt610# -----------------------------------------------------------------------------
MEDIUMCMakeLists.txt741# -----------------------------------------------------------------------------
MEDIUMCMakeLists.txt743# -----------------------------------------------------------------------------
MEDIUMCMakeLists.txt786# -----------------------------------------------------------------------------
MEDIUMCMakeLists.txt788# -----------------------------------------------------------------------------
MEDIUMazure-pipelines.yml183# ----------------------------------------------------------
MEDIUMazure-pipelines.yml185# ----------------------------------------------------------
MEDIUMbin/bundle.sh3#-----------------------------------------------------------------------------
MEDIUMbin/bundle.sh5#-----------------------------------------------------------------------------
MEDIUMbin/bundle.sh12#---------------------------------------------------------
MEDIUMbin/bundle.sh14#---------------------------------------------------------
MEDIUMbin/bundle.sh36#---------------------------------------------------------
MEDIUMbin/bundle.sh38#---------------------------------------------------------
MEDIUMbin/bundle.sh52#---------------------------------------------------------
MEDIUMbin/bundle.sh54#---------------------------------------------------------
MEDIUMbin/bundle.sh87#---------------------------------------------------------
MEDIUMbin/bundle.sh89#---------------------------------------------------------
MEDIUMbin/bundle.sh117#---------------------------------------------------------
MEDIUMbin/bundle.sh119#---------------------------------------------------------
MEDIUMbin/bundle.sh148#---------------------------------------------------------
MEDIUMbin/bundle.sh150#---------------------------------------------------------
MEDIUMbin/bundle.sh205#---------------------------------------------------------
MEDIUMbin/bundle.sh207#---------------------------------------------------------
Hallucination Indicators2 hits · 20 pts
SeverityFileLineSnippet
CRITICALdocs/jquery.js2!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):f
CRITICALdocs/jquery.js8!function(t){"use strict";"function"==typeof define&&define.amd?define(["jquery"],t):t(jQuery)}(function(y){"use strict"
Self-Referential Comments1 hit · 3 pts
SeverityFileLineSnippet
MEDIUM.github/workflows/release.yaml46 # Create a release: https://github.com/softprops/action-gh-release (MIT license)
AI Slop Vocabulary1 hit · 3 pts
SeverityFileLineSnippet
MEDIUMsrc/prim/osx/alloc-override-zone.c399// it seems less robust than using interpose.