Commit Graph

246 Commits

Author SHA1 Message Date
gingerBill
455d64fbd4 Add error value to commit 2021-10-05 17:11:12 +01:00
gingerBill
16ca677c1f Correct mmap usage 2021-10-05 17:05:33 +01:00
gingerBill
1f1434b384 Add arena_util.odin 2021-10-05 16:42:42 +01:00
gingerBill
f83370235f Add static_arena_bootstrap_new 2021-10-05 16:39:14 +01:00
gingerBill
4961aff51b Minor cleanup 2021-10-05 16:37:15 +01:00
gingerBill
0ed3143006 Merge branch 'master' of https://github.com/odin-lang/Odin 2021-10-05 16:28:25 +01:00
gingerBill
bc2b8b597c Add virtual.Static_Arena 2021-10-05 16:28:14 +01:00
gingerBill
ccc4c641c4 Clean up Memory_Block logic 2021-10-05 16:25:30 +01:00
Jeroen van Rijn
1931e3147d Remove assert from mem.ptr_to_bytes. Fixes #1206 2021-10-05 14:18:48 +02:00
gingerBill
9d9ec192f1 Rename to growing_arena.odin 2021-10-04 17:57:59 +01:00
gingerBill
586a000152 Add Protect_Flags for virtual.protect 2021-10-04 17:42:15 +01:00
gingerBill
728f143e33 Add virtual_linux.odin 2021-10-04 17:30:06 +01:00
gingerBill
f2e78dcc0b Separate out the virtual memory allocation procedures
`reserve`, `commit`, `reserve_and_commit`, `decommit`, `release`, `protect`
2021-10-04 16:43:52 +01:00
gingerBill
e05a305764 Minor clean up 2021-10-03 12:43:11 +01:00
gingerBill
a437c95fed Remove mutex from Growing_Arena; Add Growing_Arena_Temp 2021-10-03 12:41:24 +01:00
gingerBill
8fe70978ff Add @(init) usage to core:mem/virtual 2021-10-03 12:40:51 +01:00
gingerBill
08ac2fd1b6 Rename virtual.Arena to virtual.Growing_Arena 2021-09-29 16:50:36 +01:00
gingerBill
b2a36f204e Add a mutex to arena_free_all 2021-09-29 16:46:14 +01:00
gingerBill
efdd5cf499 Add a mutex to virtual.Arena 2021-09-29 16:43:58 +01:00
gingerBill
805e48ae1e Add core:mem/virtual 2021-09-29 16:39:20 +01:00
gingerBill
6fa3c992b5 mem.Raw_* alias runtime.Raw_* 2021-09-25 17:29:51 +01:00
gingerBill
bfc92d0aaf Make runtime.memset use int for the length from uint 2021-09-23 23:43:29 +01:00
Jeroen van Rijn
eb9665f836 fix mem.new_clone 2021-09-19 22:19:06 +02:00
Jeroen van Rijn
bf15e63130 Revert "Merge pull request #1177 from Kelimion/new_clone"
This reverts commit efa513262e, reversing
changes made to daccfca11d.
2021-09-19 22:16:02 +02:00
Jeroen van Rijn
64ce55944a fix mem.new_clone 2021-09-19 22:10:19 +02:00
gingerBill
ab85571ae6 Minor improvements to mem.odin 2021-09-11 16:33:05 +01:00
gingerBill
b712c84afb Fix typo 2021-09-10 16:37:43 +01:00
gingerBill
9980f81062 Add other constants to c and libc 2021-09-10 16:14:39 +01:00
gingerBill
12af657369 Unify memset usage across platforms and core:c/libc 2021-09-10 15:59:14 +01:00
gingerBill
99df0f1b12 libc changes: unify c and libc types; Add [^]T where appropriate 2021-09-10 15:41:51 +01:00
gingerBill
ca33cb990b Strip semicolons in core which were missing 2021-09-08 13:12:38 +01:00
gingerBill
3754af62d6 Correct "contextless" stuff in mem 2021-09-08 11:43:00 +01:00
gingerBill
12296cec2c Fix typo 2021-09-08 11:38:22 +01:00
gingerBill
a9f4273514 Make many mem procedures "contextless" 2021-09-08 11:18:05 +01:00
gingerBill
720884e0f1 Strip even more semicolons if followed by a } or ) on the same line 2021-08-31 23:47:57 +01:00
gingerBill
251da264ed Remove unneeded semicolons from the core library 2021-08-31 22:21:13 +01:00
gingerBill
a5c31bbee0 Add map_insert which returns the pointer to inserted value 2021-08-29 11:45:11 +01:00
gingerBill
81623861c0 Correct mem.clone_slice 2021-08-23 14:33:54 +01:00
gingerBill
4ccf135892 Unify new/make the internal logic between runtime and mem 2021-08-23 12:35:29 +01:00
gingerBill
d5bad374d9 Remove deprecated procedure slice_ptr_to_bytes 2021-08-22 12:55:57 +01:00
gingerBill
445ed9be2b Use multi-pointers when appropriate 2021-08-22 12:54:04 +01:00
gingerBill
f0437a4242 Enforce core:builtin and core:intrinsics for imports 2021-08-21 13:44:16 +01:00
gingerBill
2f5edebefa Rename mem.reinterpret to mem.reinterpret_copy 2021-08-20 10:19:30 +01:00
gingerBill
b5cdb331b0 Add mem.reinterpret 2021-08-20 10:18:34 +01:00
gingerBill
7bbc9a4634 Add #any_int directive to replace auto_cast uses on parameters. 2021-08-15 12:56:59 +01:00
gingerBill
4d00c2b800 Allocator_Error.Mode_Not_Implemented; Minor improvement to map runtime procedures 2021-08-08 14:29:45 +01:00
gingerBill
3e7aabe6d8 Change uses for parapoly records to use $ always 2021-06-14 11:43:35 +01:00
Jeroen van Rijn
03862d1f48 Mark mem.slice_ptr_to_bytes as deprecated.
Use byte_slice instead.

We can't make it an alias *and* mark it as deprecated, regrettably:

```odin
byte_slice :: #force_inline proc "contextless" (data: rawptr, len: int) -> []byte {
    return transmute([]u8)Raw_Slice{data=data, len=max(len, 0)};
}
@(deprecated="use byte_slice")
slice_ptr_to_bytes :: byte_slice;

"mem.odin(145:1) Constant alias declarations cannot have attributes"
```
2021-05-06 13:23:17 +02:00
Jeroen van Rijn
4f51d74fc2 Fix typo in core:mem alloc() comment. 2021-05-06 11:25:41 +02:00
gingerBill
e9b1d4f633 Fix #906 2021-04-20 10:34:41 +01:00