Commit Graph

8236 Commits

Author SHA1 Message Date
gingerBill
cde442fa2c Add internal padding to types where ptr size != int size 2023-04-20 11:55:18 +01:00
gingerBill
84f966cb8f Begin work on separating int and word sizes (i.e. size_of(int) might not equal size_of(uintptr)) 2023-04-20 11:46:41 +01:00
gingerBill
b2b88f1d99 Unify foreign import for vendor:sdl2 2023-04-20 11:27:36 +01:00
gingerBill
9d23a392a6 Merge branch 'master' of https://github.com/odin-lang/Odin 2023-04-20 11:27:14 +01:00
gingerBill
57214c63cb Merge pull request #2457 from jakubtomsu/master
Handle unmarshalling unknown values in `core:encoding/json`
2023-04-20 11:27:09 +01:00
gingerBill
6726df4d58 Allow aliasing foreign import name 2023-04-20 11:20:15 +01:00
gingerBill
02a58c1247 Merge pull request #2464 from ap29600/simd_unaligned_load
Improve code generation for `intrinsics.unaligned_load/store` on `#simd` types
2023-04-20 10:33:32 +01:00
gingerBill
72a7b35513 Merge pull request #2450 from destroycomputers/master
Fix intrinsics.alloca code generation
2023-04-20 10:25:43 +01:00
gingerBill
2d699fd13b Fix again append on zero sized types 2023-04-19 15:34:40 +01:00
gingerBill
13c321b8fb Fix missing cast in array_elems 2023-04-19 15:31:51 +01:00
Jeroen van Rijn
fa42a788c8 Preserve port when calling net.resolve with hostname:port. 2023-04-18 18:24:27 +02:00
gingerBill
843eaf8893 Fix race condition with -use-separate-modules due to type determination 2023-04-18 17:20:50 +01:00
gingerBill
30fa8f8ac2 Add missing enum 2023-04-18 16:08:54 +01:00
gingerBill
0ec4e8d5d4 Inline static map calls for map get, and improve readability of the LLVM IR 2023-04-18 15:17:16 +01:00
Andrea Piseri
af63eff8d7 improve code generation for intrinsics.unaligned_load/store on #simd types
the default implementation calls memcpy on an `alloca` constant, which
seems to heavily confuse the optimizer and produces overall suboptimal
code.

Introducing this specialization simplifies the intermediate
representation produced, resulting in more efficient code.
2023-04-16 15:01:30 +02:00
Jeroen van Rijn
b5d2dd617d Merge pull request #2462 from lefp/master
Fix: header directories in Unix build script
2023-04-16 10:45:04 +02:00
Peter Lef
8d951ab7f1 Fix: header directories in Unix build script 2023-04-16 04:16:31 -04:00
gingerBill
e24315eed8 Improve grammar 2023-04-15 16:16:16 +01:00
gingerBill
dc55e88588 Add @(deferred_*_by_ptr=<proc>) 2023-04-15 16:04:04 +01:00
gingerBill
7abaf77292 Add struct #no_copy 2023-04-15 15:47:18 +01:00
gingerBill
e79883e4fd Add #no_copy to sync primitives 2023-04-15 15:41:30 +01:00
gingerBill
5da76ae34b Add struct #no_copy 2023-04-15 15:37:32 +01:00
jakubtomsu
a6d5f9877f Convert indentation to tabs 2023-04-14 17:27:52 +02:00
jakubtomsu
994825671d Handle unmarshalling to json.Value 2023-04-14 15:05:25 +02:00
Jeroen van Rijn
b7b5043aea Merge pull request #2455 from nektro/patch-1
build_odin.sh: fix typo introduced in detection of llvm-config-11-64
2023-04-12 21:19:12 +02:00
Meghan
1bf4a6f711 build_odin.sh: fix typo introduced in detection of llvm-config-11-64
appeared in b22d71a74e
2023-04-12 12:18:11 -07:00
Jeroen van Rijn
073f51e284 Merge pull request #2453 from TriedAngle/patch-1
Fix: `Unable to find LLVM-config` on Ubuntu
2023-04-12 20:04:19 +02:00
TryAngle
b5784bc2ef Fix: Unable to find LLVM-config on Ubuntu
appends a check for llvm-config-14 on linux
2023-04-11 15:08:31 +02:00
Jeroen van Rijn
b42bb5be26 Only try to parse git hash if .git is present
Closes 2451
2023-04-11 11:55:29 +02:00
destroycomputers
b6f356c211 Fix intrinsics.alloca code generation
There was a disconnect between the declared return type for alloca
intrinsic in check_builtin.cpp (multi_pointer(t_u8)) and the generated
result type in llvm_backend_proc.cpp (t_u8_ptr).

This allowed slicing the return type, but in the code generation process
the type of the expression wasn't sliceable, which triggered the assert.

Fixes #2139
2023-04-11 01:11:01 +02:00
Jeroen van Rijn
b052da1065 Merge pull request #2446 from RestartFU/master
fix SendInput procedure in core:sys/windows/user32.odin
2023-04-09 09:34:05 +02:00
RestartFU
586e85281e fix SendInput function in user32 2023-04-08 23:13:37 +00:00
Jeroen van Rijn
ec3ea3752f Add Vulkan-Wayland to wrapper generator
Closes #2442
2023-04-08 13:26:38 +02:00
Jeroen van Rijn
8294480cb4 Merge pull request #2443 from limaak/fix/darwin-arm64-build-sh
build_odin.sh - fix build on darwin arm64
2023-04-08 10:21:17 +02:00
Jeroen van Rijn
6fe8692b98 Merge pull request #2445 from Lperlind/documentation/strings_returns
Document return values of strings and add allocator errors where possible
2023-04-08 10:05:39 +02:00
Jeroen van Rijn
d8e0a86600 Revert "Add VK Wayland"
This reverts commit 8b29b07f5a.
2023-04-08 09:54:02 +02:00
Jeroen van Rijn
8b29b07f5a Add VK Wayland
Closes #2442
2023-04-08 09:51:34 +02:00
Jeroen van Rijn
1d6936fafc Merge pull request #2444 from Yawning/fix/modern-crypto-cleanups
core/crypto: Cleanups/fixes
2023-04-08 09:34:28 +02:00
kamil-beker
b22d71a74e build_odin.sh - fix build on darwin arm64
Done:
- use ARCH variable properly
- refactor have_which() to use POSIX compliant command - ref
- use command instead of which for the same reason as above.
- run shfmt for consistency.
2023-04-08 08:54:53 +02:00
Yawning Angel
7fc2081543 core/crypto: Add private attributes for internals
These constants and internal routines are not intended for use outside
the actual implementations themselves.
2023-04-08 10:15:00 +09:00
Yawning Angel
b8c2b0105b core/crypto: Disable optimization for the ct byte compare
Hedge against the possibility of a compiler getting clever enough to
optimize this pattern as well.
2023-04-08 10:11:04 +09:00
Yawning Angel
d72db2698b core/crypto/_fiat: Hedge against LLVM cleverness
Recent LLVM is getting smart to the point where the optimizer can change
a traditional constant-time conditional swap into a pointer swap.

Ensure that this does not happen by force-disabling optimization.
Additionally, disable inlining the relevant routines such that manual
inspection in optimized builds is still reasonably easy to do.
2023-04-08 09:57:47 +09:00
Lucas Perlind
e0d9092df8 Document return values of strings and add allocator errors where
possible
2023-04-07 20:39:01 +10:00
Jeroen van Rijn
f863264af6 Merge pull request #2441 from Lperlind/doc/fixup
Re-enable documentation CI and improve error messages
2023-04-07 07:30:38 +02:00
Jeroen van Rijn
14736c2a8b Merge pull request #2440 from jon-lipstate/doc_fixed
resolve doc-test issues
2023-04-07 07:24:16 +02:00
Lucas Perlind
0af1b75a02 Re-enable documentation CI and improve error messages 2023-04-07 09:16:50 +10:00
Jon Lipstate
7a8aa03e54 doc tests verified 2023-04-06 14:58:57 -07:00
Jon Lipstate
846c0f7cfc add decimal subpackage ref 2023-04-06 09:56:27 -07:00
Jon Lipstate
1886193c6c resolve doc-test issues 2023-04-06 09:44:57 -07:00
Jeroen van Rijn
100e907890 Temporarily disable doc tests. 2023-04-06 16:09:44 +02:00