Commit Graph

  • 26cead275c Merge branch 'dev' into dev-exp-tls daan 2020-02-02 13:12:26 -08:00
  • 57c2e3b5a2 update thread local storage daan 2020-02-02 13:12:22 -08:00
  • b4e05c73ce fix build warning on FreeBSD daan 2020-02-02 09:25:39 -08:00
  • b1ce0ecfc4 Merge branch 'dev-exp' into dev-exp-tls daan 2020-02-01 17:48:57 -08:00
  • 8b0d1dddb3 reformatting daan 2020-02-01 17:48:26 -08:00
  • 012655e83a use default declaration for the STL allocator class daan 2020-02-01 17:41:04 -08:00
  • 70e8f38d3d add 'nodiscard' attribute to mimalloc interface daan 2020-02-01 17:29:30 -08:00
  • db514a6587 add initial fast tls for macOSX daan 2020-02-01 16:57:00 -08:00
  • 0d3665f4be use __thread locals on linux daan 2020-02-01 14:33:24 -08:00
  • 5678e5962d Merge branch 'dev-exp' into dev-exp-tls daan 2020-02-01 14:30:34 -08:00
  • 7ac64f82b8 add test-api to vs solution daan 2020-02-01 14:29:55 -08:00
  • b23c37212f fix zero initialization of blocks under 8 bytes when padding check is active daan 2020-02-01 14:29:12 -08:00
  • 6d312db040 merge dev-exp; add pthread TLS support for macOSX daan 2020-02-01 13:11:48 -08:00
  • d37ed77c29 merge from dev-win (padding) daan 2020-02-01 12:32:59 -08:00
  • b1955b47b6 improve encoding of padding canary and buffer overflow detection daan 2020-02-01 12:15:12 -08:00
  • 31b075a004 byte-precise heap block overflow checking with encoded padding daan 2020-01-31 23:39:51 -08:00
  • 03092b7913 better padding implementation, more precise statistics daan 2020-01-31 20:34:24 -08:00
  • 1d64535d30 improve messages; fix reset size calculation on large pages daan 2020-01-31 17:28:26 -08:00
  • 4b5b08bae4 enable page-reset by default daan 2020-01-31 17:27:45 -08:00
  • 6e720d7920 fix padding check for aligned allocation; improve perf for small aligned allocations daan 2020-01-31 13:20:02 -08:00
  • 4bbfa86516 merge from dev; add retired collect on abandon daan 2020-01-30 07:24:35 -08:00
  • ede4f47b52 fix stat accounting of segments with huge blocks daan 2020-01-30 06:25:42 -08:00
  • 54ce4d810f improve performance with tls recursion counter daan 2020-01-29 23:08:12 -08:00
  • 5dbfee46bf first working tls on macOS using interpose; still slow daan 2020-01-29 22:46:44 -08:00
  • f630379069 use EFAULT for buffer overflow and call abort in debug mode (as well as secure mode) daan 2020-01-29 17:25:40 -08:00
  • d7b8d4b3ee add MI_PADDING build option to add padding to each block to detect heap block overflows daan 2020-01-29 17:10:57 -08:00
  • 5094adff3f merge from dev-exp daan 2020-01-29 07:35:38 -08:00
  • e3e7760d5d merge from dev-exp daan 2020-01-27 23:36:53 -08:00
  • a2911a25b3 Merge branch 'dev' into dev-exp daan 2020-01-27 23:15:37 -08:00
  • 527a2275de increase retire page size daan 2020-01-27 23:15:24 -08:00
  • d9e9321ff7 fix is_zero setting in regions daan 2020-01-27 23:13:57 -08:00
  • a5e954392e increase retire page size daan 2020-01-27 22:41:24 -08:00
  • 4204a6e2fe merge from dev-exp; resolve conflicts daan 2020-01-27 22:14:10 -08:00
  • b7ae8d5842 merge from dev-exp; better abandoned reclamation daan 2020-01-27 22:12:23 -08:00
  • a9d6d6fa04 cleanup reclaim logic daan 2020-01-26 12:39:11 -08:00
  • 81c52ecf7f add extra assertion that all segments are free on thread termination daan 2020-01-25 14:30:02 -08:00
  • 6f86cf0345 fix over-eager page reset in segment reclamation daan 2020-01-25 13:43:56 -08:00
  • 8f65999f92 move 'memory.c' to 'region.c' daan 2020-01-25 13:28:49 -08:00
  • dbea344775 fix warning on gcc on attribute ignore in templates daan 2020-01-25 13:28:24 -08:00
  • 2a22c3da00 fix freeing of segments on forced reclaim daan 2020-01-25 13:27:47 -08:00
  • 6299eae032 Merge branch 'dev' into dev-exp-abandon daan 2020-01-25 13:03:06 -08:00
  • 1564b8d9be clean up stress test daan 2020-01-25 12:51:56 -08:00
  • 2aaadeb2a6 allow reset on large pages; check commit status before reset daan 2020-01-25 12:49:14 -08:00
  • 804986c2a9 add visit count to abandoned to limit list length daan 2020-01-25 12:26:08 -08:00
  • c12cd496d4 Merge branch 'dev' of https://github.com/microsoft/mimalloc into dev daan 2020-01-25 11:20:17 -08:00
  • f302716d8e Merge pull request #198 from devnexen/arc4random_api_apple Daan 2020-01-25 09:51:29 -08:00
  • 21e6b57977 enable arc4random abi under apple David Carlier 2020-01-25 14:47:09 +00:00
  • 9e36c0b2f4 Merge branch 'dev' into dev-exp-abandon daan 2020-01-24 20:20:55 -08:00
  • 763f032a45 fix bug in committed check in arena allocation daan 2020-01-24 20:20:43 -08:00
  • a2b0e91e99 avoid memset daan 2020-01-24 20:17:33 -08:00
  • 34e17195ac add cache alignment directives for contended variables daan 2020-01-24 19:02:13 -08:00
  • 9ed4cc4a20 fix tagged null encoding, search segment cache before reclaim daan 2020-01-24 16:30:52 -08:00
  • 0e5575f445 Merge branch 'dev' into dev-exp-abandon daan 2020-01-24 15:48:34 -08:00
  • 0d4a2aa86f add warning on region exhaustion daan 2020-01-24 15:45:03 -08:00
  • 56e45f0b2f clean up comments daan 2020-01-24 11:03:12 -08:00
  • f207648858 fix linux build daan 2020-01-24 10:38:25 -08:00
  • eddd7906fc make stress test deterministic daan 2020-01-23 21:53:28 -08:00
  • 0e1ef35ba7 fix assertion, add check for page committed before doing reset daan 2020-01-23 21:44:32 -08:00
  • 444e80b77f fix bug in collect where has_page was not set on free pages daan 2020-01-23 21:37:14 -08:00
  • f06cf3b26b initial abandon based on fine-grained reclamation daan 2020-01-23 19:50:35 -08:00
  • fed31f373c add leak test daan 2020-01-23 19:49:32 -08:00
  • 3b231bb09b do not reclaim segments on collect daan 2020-01-23 15:48:51 -08:00
  • 49ce929054 fix assertion on page destroy daan 2020-01-23 15:39:38 -08:00
  • 1d801fca18 remove __thread attribute from mimalloc.h daan 2020-01-23 11:06:25 -08:00
  • 7daa5b6d2a fix warning in msvc daan 2020-01-23 10:52:27 -08:00
  • 2e1b84c751 use -fvisibility=hidden on clang as well daan 2020-01-23 10:31:47 -08:00
  • fd5075e346 improve codegen for mi_free daan 2020-01-23 10:03:03 -08:00
  • b4aaac333b use atomic yield on delayed-freeing; clarify code daan 2020-01-23 09:57:55 -08:00
  • ea2efde4a6 merge with new atomic macros daan 2020-01-22 20:53:44 -08:00
  • 982e30e3a0 Merge branch 'dev' into dev-arena daan 2020-01-22 20:39:33 -08:00
  • faeeeca6bb enable atomic yield when delayed_freeing is encountered daan 2020-01-22 20:12:42 -08:00
  • 6da3bf0e0d nicer message on huge OS page reservation daan 2020-01-22 19:46:43 -08:00
  • 5d6772c916 reduce type casts in atomic operations daan 2020-01-22 19:44:54 -08:00
  • 0ea8031f8b bump version to 1.5 for further development daan 2020-01-22 18:33:07 -08:00
  • 7d057315f0 Update readme.md Daan 2020-01-22 18:16:40 -08:00
  • e36c731a2c Update readme.md Daan 2020-01-22 15:27:47 -08:00
  • 755a6355bc Fix benchmark chart display Daan 2020-01-22 15:21:54 -08:00
  • b5db5af890 fix benchmark chart links daan 2020-01-22 15:08:18 -08:00
  • 23348e74c1 add benchmark charts daan 2020-01-22 15:06:44 -08:00
  • 00b41a8a93 add updated benchmarks daan 2020-01-22 15:05:02 -08:00
  • ca5158da11 align size of page_t, increase slices per segment Daan Leijen 2020-01-22 11:29:32 -08:00
  • c4f5cfafa0 small fixes, reduced segment size, fix merge conflicts daan 2020-01-20 22:33:29 -08:00
  • 5393072c68 merge from dev daan 2020-01-20 19:06:08 -08:00
  • 231ea6cf49 update documentation daan 2020-01-20 17:34:29 -08:00
  • 76e435a299 add mi_new_realloc(n) to support C++ style reallocation that raises std::bad_alloc on out-of-memory daan 2020-01-20 15:41:56 -08:00
  • 731bc6bf45 add missing members to stl allocator (#193) daan 2020-01-20 15:27:05 -08:00
  • 783e1593f1 only collect retired at fresh page allocation daan 2020-01-20 12:14:34 -08:00
  • 079c5c014b add alloc_align attribute to aligned allocation functions daan 2020-01-19 22:14:35 -08:00
  • cd7926b481 add max_size member to STL allocator daan 2020-01-19 21:27:46 -08:00
  • c22835cb4f fix compilation under Intel C compiler (icc) daan 2020-01-19 18:35:45 -08:00
  • 0b896fafe0 fix build warnings on linux daan 2020-01-19 17:33:36 -08:00
  • ffc2b9b99a fix assertion in mi_block_zero_init (issue #194) daan 2020-01-18 20:30:12 -08:00
  • 5914fae7f8 Add ability to register custom error function called on various error conditions; including ENOMEM daan 2020-01-17 19:59:55 -08:00
  • 9172693463 fix STL deallocate passing count (instead of size) to mi_free_size daan 2020-01-17 15:58:43 -08:00
  • 18169516d9 dont compile test-stress.c as C++ code (or we get atomic compilation errors) daan 2020-01-17 15:45:12 -08:00
  • 7ada7aa5a1 improve STL allocator using mi_new_n and removing unused parameter names; follow up from pr #193 and #188 daan 2020-01-17 15:41:52 -08:00
  • 9860958231 Suppress C source compiled as C++ warning on clang daan 2020-01-17 15:39:41 -08:00
  • 53bfbc8206 update documentation daan 2020-01-17 15:39:06 -08:00
  • fbef67bfdd update documentation daan 2020-01-16 19:39:14 -08:00
  • b921b1b6fa make mimalloc compile with the highest warning level on msvc daan 2020-01-16 18:12:01 -08:00