Samuel Elgozi
2f68a64614
core:sys/darwin/Foundation: Skip Cocoa import on iOS
2026-08-23 20:14:57 +03:00
Manuel
d79ef965a0
Fix formatting
2026-08-22 21:50:07 +02:00
Manuel
ee04c3b272
Add murmur3 implementation
2026-08-22 15:48:38 +02:00
gingerBill
f2d9b10fdc
Merge pull request #7406 from odin-lang/bill/rexcode-riscv-clobber
...
Inline `asm` RISC-V Support
2026-08-21 17:25:30 +02:00
gingerBill
648c418fc4
Restrict riscv to only allow [base + disp] (i.e. disallow index*scale style things)
2026-08-21 14:31:58 +01:00
gingerBill
4a4a5045f8
Check for float register width exactly for risc-v frontend
2026-08-21 12:19:02 +01:00
gingerBill
a604ddceb1
Support pseudo macro mnemonics (for RISC-V) in the frontend
2026-08-21 11:47:41 +01:00
Carlyle
89447378ea
fixed negative read bug in core:image/jpeg
2026-08-20 19:49:32 -07:00
gingerBill
d0fb380c20
Support riscv _aq _rl _aqrl suffixes for mnemonics
2026-08-21 01:05:47 +01:00
gingerBill
de8c0dc4fe
Fix register width test for risc-v, and improve operand slot type inference for risc-v
2026-08-21 00:38:34 +01:00
gingerBill
7a7bfea0bd
Begin work on pseudo mnemonics in the checker
2026-08-20 19:12:44 +01:00
gingerBill
cfb8a109b6
Begin work on pseudo-aliases
2026-08-20 17:51:47 +01:00
gingerBill
84f9bc76f9
Mockout inline asm for riscv
2026-08-20 14:42:42 +01:00
gingerBill
1009ab0c62
Add riscv.clobber_forms.bin
2026-08-20 11:45:50 +01:00
gingerBill
f3899c1825
rexcode: riscv INSTRUCTION_TABLE which includes the clobber information
2026-08-20 11:43:26 +01:00
gingerBill
2ebc25001d
Add missing risc-v instructions to rexcode
2026-08-20 11:08:03 +01:00
gingerBill
ce6ad239bf
Merge pull request #7362 from odin-lang/bill/rexcode
...
`core:rexcode` improvements
2026-08-20 10:54:07 +02:00
gingerBill
baae2636b8
Add support for x86 mnenomics in and out
2026-08-20 09:53:28 +01:00
kalsprite
8d890cc705
fix typo
2026-08-19 18:04:34 -07:00
gingerBill
4df8adb017
Merge pull request #7384 from odin-lang/bill/x86-merge-tables
...
rexcode/x86 merge tables
2026-08-19 18:01:52 +02:00
gingerBill
ea04ce30e4
Remove dead comment
2026-08-19 16:45:23 +01:00
gingerBill
22bdf11436
Rename to instruction_table.odin
2026-08-19 16:44:42 +01:00
gingerBill
bda4c2cd95
Merge ENCODING_TABLE and CLOBBER_TABLE into a single INSTRUCTION_TABLE
2026-08-19 16:44:19 +01:00
Jeroen van Rijn
057163d1d8
Merge pull request #7383 from karl-zylinski/handle-map-fixes
...
Handle Map: Nicer organization + fix broken test + add test
2026-08-19 17:39:50 +02:00
Karl Zylinski
4d7edd08d1
Fix broken example in handle_map/doc.odin
2026-08-19 17:13:38 +02:00
Karl Zylinski
36ae65bba2
Fix broken example in handle_map/doc.odin
2026-08-19 17:13:07 +02:00
gingerBill
7a01de6a45
Add extra tables to cpp-gen.odin
2026-08-19 16:08:02 +01:00
Karl Zylinski
a0a75bf4a7
Split the non-specific parts of the Handle Map out to a general.odin file. This means that the Handles and the generic procedure groups are no longer in static_handle_map.odin. Also enabled and fixed the static handle map test. Added another test that uses the generic procedure groups.
2026-08-19 17:03:59 +02:00
gingerBill
8956deb322
Check for implicitly read registers which have not be handled
2026-08-19 12:29:54 +01:00
gingerBill
4cf22b3efa
Merge pull request #7380 from dbriemann/dlb/vpdpwssd
...
Add AVX-512 VNNI VPDPWSSD support to inline assembly
2026-08-19 12:53:41 +02:00
gingerBill
8d0cc4d64b
Clobber implicit_wr and implicit_rd
2026-08-19 11:03:50 +01:00
David Linus Briemann
36af738347
core:rexcode: regenerate x86 encoding tables
2026-08-19 09:09:58 +02:00
David Linus Briemann
8370fdaf7c
core:rexcode: add AVX-512 VNNI VPDPWSSD
2026-08-19 09:09:50 +02:00
gingerBill
64ac30e803
Merge pull request #7272 from nic-vdwalt/wasm-js-shared-memory
...
core/sys/wasm/js: support shared WebAssembly memory in browser APIs
2026-08-18 20:11:55 +02:00
gingerBill
587f030cbf
Remove use of do
2026-08-18 18:23:42 +01:00
gingerBill
65ddd08984
Merge branch 'master' into bill/rexcode
2026-08-18 18:23:03 +01:00
gingerBill
9870cd4c36
Merge pull request #7271 from odin-lang/bill/inline-asm
...
`asm` templates
2026-08-18 19:19:40 +02:00
Jeroen van Rijn
6b661becae
Merge pull request #7375 from thetarnav/remove-inline-keywords-core-odin
...
Remove `inline` and `no_inline` keywords from `core:odin`
2026-08-18 19:03:00 +02:00
thetarnav
f1bbd8fe49
Remove inline and no_inline keywords from core:odin
...
Odin uses `#force_inline` and `#force_no_inline` directives, not
keywords.
The cpp parser does not define them as keywords:
/home/thetarnav/Projects/odin/src/tokenizer.cpp:86
Nor does the grammar spec: https://odin-lang.org/spec/grammar/#keywords
2026-08-18 18:25:22 +02:00
Nick Aversano
54b818e9a7
fix FILE_NOTIFY_INFORMATION struct member casing
2026-08-18 11:19:10 -04:00
gingerBill
14184744ee
Add missing x86.clobber_forms.bin
2026-08-18 15:13:37 +01:00
gingerBill
6e17e7a2de
Add missing x86 instructions
2026-08-18 13:19:23 +01:00
gingerBill
8d33a47fab
Improve comment for the CLOBBER_TABLE
2026-08-18 11:54:45 +01:00
gingerBill
18df1ed23e
Correct clobber_table.odin
2026-08-18 11:44:35 +01:00
gingerBill
80d7f6462a
Minor clean up
2026-08-18 11:33:49 +01:00
gingerBill
35ae861ff6
Use number rather than enum
2026-08-18 11:28:54 +01:00
gingerBill
8e807fb7aa
Use new clobber forms in check_asm.cpp
2026-08-18 11:23:20 +01:00
gingerBill
b1b08c13c0
Update clobber table to encode the clobbering for each of the forms
2026-08-18 11:20:30 +01:00
Jeroen van Rijn
7140c5bccb
Fix #7365
...
Fixes #7365
2026-08-18 01:53:55 +02:00
Ruan
ad8cfbeb73
Fix slice.simple_equal misbehaviour on empty slice with non-nil data
...
Before this change, the following code:
```odin
package strconcat
import "core:fmt"
import "core:slice"
main :: proc() {
a: [1]u8
s1: []u8 = {}
s2: []u8 = a[:0]
fmt.printfln("s1={} len(s1)={} raw_data(s1)={}", s1, len(s1), raw_data(s1))
fmt.printfln("s2={} len(s2)={} raw_data(s2)={}", s2, len(s2), raw_data(s2))
fmt.printfln("equal(s1, s2): {}", slice.equal(s1, s2))
fmt.printfln("simple_equal(s1, s2): {}", slice.simple_equal(s1, s2))
}
```
Produced the following output on my machine:
```
s1=[] len(s1)=0 raw_data(s1)=<nil>
s2=[] len(s2)=0 raw_data(s2)=0x7FFFED64F74F
equal(s1, s2): true
simple_equal(s1, s2): false
```
This commit fixes simple_equal's behaviour to match that of equal.
2026-08-17 22:38:40 +02:00