gingerBill
b725e01cdd
Add @(require_results) to many procedures
2022-10-13 11:10:16 +01:00
gingerBill
cf4afc2e7b
Inline assert condition
2022-10-12 21:26:50 +01:00
gingerBill
5ed06f7eb8
Rename constants; minor rearrange of Arena layout
2022-10-12 21:23:45 +01:00
gingerBill
765cd66b30
Clean up minimum_block_size default implicit initialization
2022-10-12 21:20:31 +01:00
gingerBill
5a8fbc230d
Sanity corrections to virtual calls
2022-10-12 21:16:34 +01:00
gingerBill
5c62211f00
Inline resize logic for virtual.Arena
2022-10-12 20:44:36 +01:00
gingerBill
835b8ffa22
Update total_used for arena_static_reset_to
2022-10-12 20:30:48 +01:00
gingerBill
b84108c4b5
Inline align forward offset code
2022-10-12 20:28:51 +01:00
gingerBill
6642e1fc9d
Unify Static_Arena and Growing_Arena into Arena
2022-10-12 19:10:04 +01:00
gingerBill
1b5860e574
Merge branch 'master' of https://github.com/odin-lang/Odin
2022-10-11 21:22:05 +01:00
gingerBill
047d45584e
Fix #2016 when passing an untyped integer to a generic typeid parameter
2022-10-11 21:21:56 +01:00
gingerBill
970ac22647
Merge branch 'master' of https://github.com/odin-lang/Odin
2022-10-10 21:49:03 +01:00
gingerBill
419eab5059
Force call site attributes for procedures (relating to #2121 causing ABI issues for intrinsics.objc_send)
2022-10-10 21:48:56 +01:00
gingerBill
ee070c9bd3
Merge branch 'master' of https://github.com/odin-lang/Odin
2022-10-04 10:18:40 +01:00
gingerBill
aebafdcd08
update virtual.growing_arena_bootstrap_new
2022-10-04 10:18:32 +01:00
gingerBill
35ee7f3cba
Add system:legacy_stdio_definitions.lib to .odin for Windows
2022-10-02 11:58:17 +01:00
gingerBill
c4d19dfa92
Use uint instead of int to improve code generation for bounds checking
2022-09-27 22:31:46 +01:00
gingerBill
35e70f4be1
Add node data for union when using intrinsics.type_convert_variants_to_pointers
2022-09-27 22:30:00 +01:00
gingerBill
0fe006157e
Remove extra pointer indirection
2022-09-27 00:18:19 +01:00
gingerBill
4d208dc092
Override lbArgKind to be indirect for #by_ptr parameters
2022-09-27 00:10:05 +01:00
gingerBill
83ffb68bb7
Fix typo in map_insert
2022-09-23 12:09:46 +01:00
gingerBill
a7484f16cb
Merge branch 'master' of https://github.com/odin-lang/Odin
2022-09-22 15:17:42 +01:00
gingerBill
6c8aad0afb
Make intrinsics.{count_ones, count_zeros, count_trailing_zeros, count_leading_zeros} work at compile time
2022-09-22 15:17:36 +01:00
gingerBill
eb0d7465e2
Fix libc.aligned_alloc for Windows (thanks Microsoft(!))
2022-09-22 01:22:48 +01:00
gingerBill
07d798c61a
Fix libc.aligned_alloc on Windows
2022-09-22 01:17:58 +01:00
gingerBill
b426e8577b
cap(Enum) (equivalent to max(Enum)-min(Enum)+1)
2022-09-22 01:09:18 +01:00
gingerBill
532133d648
Minor technical improvement
2022-09-22 00:55:28 +01:00
gingerBill
c056a0d108
Add slice.enumerated_array
2022-09-22 00:52:37 +01:00
gingerBill
6fe1825db9
Improve error message for slicing an enumerated array
2022-09-22 00:47:23 +01:00
gingerBill
b15968f140
Improve suggestions for certain assignments
2022-09-22 00:42:03 +01:00
gingerBill
0ddf1bf660
Minor style change
2022-09-22 00:36:31 +01:00
gingerBill
dade5b5ef2
Improve error message for check_is_expressible (Cannot convert X to Y from Z)
2022-09-22 00:34:36 +01:00
gingerBill
3aea9a7c20
Improve error messages for compile time known bounds checking
2022-09-22 00:30:10 +01:00
gingerBill
0dce7769f4
Clean up private internal constant global handling
2022-09-22 00:18:03 +01:00
gingerBill
4b73438833
Merge branch 'master' of https://github.com/odin-lang/Odin
2022-09-22 00:05:46 +01:00
gingerBill
8c3f01fbfa
Correct parapoly determination of generated internal type of a map
2022-09-22 00:05:11 +01:00
gingerBill
0380601bb4
Fix map_insert
2022-09-21 23:47:33 +01:00
gingerBill
a6d3cbe824
Correct json.unmarshal for maps
2022-09-21 13:10:06 +01:00
gingerBill
9b9aa9c353
Remove more dead code for map header stuff
2022-09-21 13:08:40 +01:00
gingerBill
831620bfc4
Remove header cache code
2022-09-21 13:06:02 +01:00
gingerBill
4f50988799
Remove debug code
2022-09-21 13:03:30 +01:00
gingerBill
ff97a73152
Reduce unnecessary map gets
2022-09-21 13:03:13 +01:00
gingerBill
769d8dd038
Simplify __get_map_header stuff
2022-09-21 12:13:05 +01:00
gingerBill
1d793ea338
Split header table data and the map pointer
2022-09-21 12:09:05 +01:00
gingerBill
5337413c56
Temporary patch for lb_gen_map_header
2022-09-21 11:36:14 +01:00
gingerBill
380905618a
Merge branch 'master' of https://github.com/odin-lang/Odin
2022-09-21 11:31:58 +01:00
gingerBill
3ff56e4405
Correct get_fullpath_relative to remove all trailing path separators (/ and \)
2022-09-21 11:31:52 +01:00
gingerBill
eb7a9c55b0
Improve parapoly support for ^T to [^]$V and vice versa
2022-09-20 22:47:53 +01:00
gingerBill
729ffeee09
Begin work on core:debug/pe
2022-09-17 18:45:33 +01:00
gingerBill
0092995f9d
Update .gitignore
2022-09-17 17:54:12 +01:00
gingerBill
3fb69d59bb
Minor correction to __get_map_header
2022-09-17 17:48:38 +01:00
gingerBill
756c1b7bcb
Correct slice/ptr.odin calls
2022-09-17 15:12:32 +01:00
gingerBill
cd484979a8
General clean up minor with rearrangements and removing unneeded procedures
2022-09-17 15:09:39 +01:00
gingerBill
9e3ea92829
Inline many calls and delete unused procedures
2022-09-17 14:59:16 +01:00
gingerBill
c37de9459e
Minor refactor of the dynamic_map_internal.odin stuff
2022-09-17 14:46:52 +01:00
gingerBill
4d512c2cf6
Correct lb_gen_map_header initialization
2022-09-17 13:40:29 +01:00
gingerBill
81f10f53ad
Correct delete_key
2022-09-17 13:22:23 +01:00
gingerBill
fbf036a654
Wrap __dynamic_map_find for certain cases
2022-09-17 13:11:29 +01:00
gingerBill
40bcfc7c8d
Update json/unmarshal.odin for the new runtime.__dynamic_map_set
2022-09-17 13:05:14 +01:00
gingerBill
bfe0ffd6e6
Minor clean up
2022-09-17 13:02:06 +01:00
gingerBill
8ee6bb5d4b
Add contextless where possible in dynamic_map_internal.odin
2022-09-17 13:00:19 +01:00
gingerBill
0ebc2add03
Use a cache when generating the map header to minimize stack wastage
2022-09-17 12:56:03 +01:00
gingerBill
7840c1b89f
Change __dynamic_map_get and __dynamic_map_set to use separate parameters rather than take a singular struct
2022-09-17 12:48:12 +01:00
gingerBill
0428d5ae2e
Catch missing areas of Map_Index usage
2022-09-17 12:27:34 +01:00
gingerBill
b967ae2739
Change internal map indices to use a distinct uint rather than just int
2022-09-17 12:21:23 +01:00
gingerBill
99a1a10286
Fixed #2044 Uninitialised constant struct member values can cause crash
...
Foo :: struct {
x: i32,
data: sa.Small_Array(10, i32),
}
defaultFoo :: Foo{
x = 1,
// The 'data' value is not set!
}
fmt.println(defaultFoo.data) // caused the bug
2022-09-17 11:01:56 +01:00
gingerBill
9640b49319
Fix #1435 type switch statements of empty union types
2022-09-17 10:42:54 +01:00
gingerBill
1bc0e66ed1
Improve error message for using offset_of within a struct itself of that struct
2022-09-17 10:36:49 +01:00
gingerBill
117d32dfc4
Enforce constant pointer cast on global procedure variable initialization x := proc() {}
2022-09-17 10:26:57 +01:00
gingerBill
320b84df4f
Fix #2052 typo in linalg.max_single
2022-09-17 10:20:52 +01:00
gingerBill
98eaf5c6c0
Fix #2054 Differing behaviours with defer statements for single vs multiple return values caused by naïve ABI optimization
2022-09-17 10:20:04 +01:00
gingerBill
f50fc33749
Clean up of the core library to make the stream vtables not be pointers directly.
2022-09-15 10:00:50 +01:00
gingerBill
1e595f2e26
Add missing import
2022-09-14 18:27:02 +01:00
gingerBill
28ad4f8623
Use json field tag for json.marshal
2022-09-14 18:21:12 +01:00
gingerBill
a3c04db828
Revert "Just get the value directly and store it in another global variable"
...
This reverts commit 190c3ab0cd .
2022-09-14 17:57:12 +01:00
gingerBill
3ea7af4c9c
Minor fix to lb_big_int_to_llvm
2022-09-14 17:51:33 +01:00
gingerBill
190c3ab0cd
Just get the value directly and store it in another global variable
...
// global
x := &Foo{}
2022-09-14 17:50:31 +01:00
gingerBill
53c7cf895c
Merge branch 'master' of https://github.com/odin-lang/Odin
2022-09-14 16:52:09 +01:00
gingerBill
db1b7b2d21
Allow for ignored fields in struct for json.unmarshal
2022-09-14 16:52:01 +01:00
gingerBill
0ff5ff6ff2
Use pow of two capacity for hash maps to allow for & (n-1) instead of % n
2022-09-12 21:22:45 +01:00
gingerBill
a35d6a6f8d
Improve mem/virtual handling of out of memory on Windows
2022-09-12 17:06:32 +01:00
gingerBill
663b62e45f
Fix ODIN_BUILD_PROJECT_NAME
2022-09-12 14:43:50 +01:00
gingerBill
6910182011
Fix debug generation for named results
2022-09-12 14:12:31 +01:00
gingerBill
bba47b6f54
Merge branch 'master' of https://github.com/odin-lang/Odin
2022-09-12 13:44:34 +01:00
gingerBill
ef372bd861
Replace #optional_second with #optional_allocator_error
2022-09-12 13:08:32 +01:00
gingerBill
fbbfe438dc
Improve debug info to named return values
2022-09-12 13:08:05 +01:00
gingerBill
e008eeac6a
Simplify package io by removing different unnecessary types and calls
2022-09-11 15:42:08 +01:00
gingerBill
913e8b2e02
Unify debug parameter code
2022-09-10 10:03:51 +01:00
gingerBill
5800e085e8
Merge branch 'master' of https://github.com/odin-lang/Odin
2022-09-09 23:07:16 +01:00
gingerBill
623d687192
Split debug info generation for direct and indirect parameters
2022-09-09 23:07:09 +01:00
gingerBill
3fae8b49db
Fix pointer cast of constant procedure values
2022-09-08 17:27:13 +01:00
gingerBill
8fb9db3deb
Revert build.bat
2022-09-08 17:18:54 +01:00
gingerBill
0859ccc5c0
Disable buggy escape analysis
2022-09-08 17:13:37 +01:00
gingerBill
0c9ddd51a4
Keep -vet happy
2022-09-08 16:55:40 +01:00
gingerBill
f77709e67e
Add intrinsics.type_convert_variants_to_pointers and reflect.get_union_as_ptr_variants
2022-09-08 16:52:51 +01:00
gingerBill
81e3b64ecd
Add ODIN_BUILD_PROJECT_NAME and //+build-project-name
...
This allows for condition inclusion of files, similar to `+build` or `ODIN_BUILD`, but relies on the directory name of the project to be the same as specified
Example:
odin build foo/bar/baz
ODIN_BUILD_PROJECT_NAME == "baz"
//+build_project_name baz
2022-09-08 16:35:25 +01:00
gingerBill
39728b8bfb
Add the builtin procedures abs, clamp min, max to core:math as aliases
2022-09-08 15:08:53 +01:00
gingerBill
3b5998af12
Fix typo for pow in runtime.js
2022-09-08 14:48:37 +01:00
gingerBill
268fb22bca
Use llvm.dbg.declare for procedure parameters rather than llvm.dbg.value
2022-09-07 23:47:33 +01:00
gingerBill
ab1741ab38
Add Windows 32-bit build system error
2022-09-07 12:27:15 +01:00