diff --git a/src/intrinsics.cpp b/src/intrinsics.cpp index 444a76b853f7d..1d9844e20e944 100644 --- a/src/intrinsics.cpp +++ b/src/intrinsics.cpp @@ -50,6 +50,14 @@ JL_DLLEXPORT uint32_t jl_get_LLVM_VERSION(void) ; } +extern "C" JL_DLLEXPORT int8_t jl_is_memdebug() { +#ifdef MEMDEBUG + return true; +#else + return false; +#endif +} + /* low-level intrinsics design: TODO: fix description below functions like add_int expect unboxed values of matching bit-length. diff --git a/test/misc.jl b/test/misc.jl index bf3795ffb8051..e91c3ca135b8c 100644 --- a/test/misc.jl +++ b/test/misc.jl @@ -230,7 +230,8 @@ module Tmp14173 A = randn(2000, 2000) end whos(IOBuffer(), Tmp14173) # warm up -@test @allocated(whos(IOBuffer(), Tmp14173)) < 10000 +const MEMDEBUG = ccall(:jl_is_memdebug, Bool, ()) +@test @allocated(whos(IOBuffer(), Tmp14173)) < (MEMDEBUG ? 20000 : 8000) ## test conversion from UTF-8 to UTF-16 (for Windows APIs)