From f45935cf347723ee24e6419cebe76a6d6f27eef9 Mon Sep 17 00:00:00 2001 From: Daan Leijen Date: Mon, 10 Jan 2022 16:09:42 -0800 Subject: [PATCH] add mimalloc injection utility for windows --- bin/minject.exe | Bin 0 -> 20992 bytes bin/minject32.exe | Bin 0 -> 17920 bytes 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 bin/minject.exe create mode 100644 bin/minject32.exe diff --git a/bin/minject.exe b/bin/minject.exe new file mode 100644 index 0000000000000000000000000000000000000000..e576c71f3021a7f313b06a1f9925dcdba982a522 GIT binary patch literal 20992 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 QapZ|hD}IIfub_ed1z*HtcK`qY literal 0 HcmV?d00001 diff --git a/bin/minject32.exe b/bin/minject32.exe new file mode 100644 index 0000000000000000000000000000000000000000..1eb8a75daef6328e611bb431118eb6f9a701c322 GIT binary patch literal 17920 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�gobE~@2UnXu1Y}+RK?6?jf_x<<822V7ywAtdp31o;B)|pr*N?+Ri z9Z-vL==GJ0{3)2u z{?5!D*-PpE*3~ZhrN)_~fs`PaBwxTUReIXJF>2TS4Qht#ct7;S=br#>|9fI}Kz!oO z0gNKH*?q1Zh~e8r|8(QbW*fiTh1gZ%4$+M-6G+WV9sWws4)1o+w^RtYid$*PFfVO) zxc%Z%VbwGp)2c5Y#k6V`Po`DV!lAoqRa|eV%r@c|*OGC@M2jkGdDiBvTeI%XdLrw$ zS^p#JPg(P_Q?m`(o3iiEekWU(b45;m&ZeC1oDXt7&B-@xH+*cc=l(SJ*ST-!&R?Cf z`l{7)^RCWI&$}b9C%-@c+5%(2i2_~W^1`yh&cfY=`wQBYH!U$`nAVtnYT!JJ`UZEiMqnS0D3^S$O@n4dBqH@{&% zZB|>Zu%ubCEk%|p%SKDPWvAtK%fDHkunbyWw!CNgUlvW#rA5~ktt_f7l8Sy_^llLo z;Fs{p%d%>+Zp->j)}OPk%WllRBl}SHx$IA~FUd*Gse?>njwh!-=YgDooU=LSa}o?X zLycjl;Vr|w+^ch!&)}#_2k`}*PkcnJ&^ZA z-qU%9@?Oh(E3bS_-I{N&39mW2=H!~wYd%;rH@`UlTlt&w+w$+se=>hCegLtrW2-jOz)c}O)B#e^Y!KebE&z}++yx9-)!zP|FiiX^N-9wG5>e-W9BE#&zPS# zA2q*f{=NAf^BMC8=1< z5z8;2&!;RymQl+~mRBurTHdz&!7^_7z;fR5nMGYRuSj3CsOXxa?-%``2u_1@C{)a{ vvh%acvMaK;WVdB6HVfuu=3a1v1}puT2mX~cmNk{d_<0`He?0$%H1K}_r@M&h literal 0 HcmV?d00001