Commit Graph

5385 Commits

Author SHA1 Message Date
gingerBill
c1333d75ef Add ## and ##= operators 2025-03-31 16:32:55 +01:00
gingerBill
e7ae7b8fd4 Command package -> bundle 2025-03-28 09:27:04 +00:00
gingerBill
edf97bdb03 Merge pull request #4970 from odin-lang/bill/android-subtarget
Very Very Rudimentary Support for Android
2025-03-28 09:02:26 +00:00
gingerBill
d3f0b31fcc Improve or_else type inference logic 2025-03-27 15:08:53 +00:00
Dave Voutila
5274aa53b3 Fix linker invocation on OpenBSD.
Firstly, we need to explicitly request pthreads and also need to
mind the fact ports (like SDL2) install in /usr/local/lib.

Secondly, since OpenBSD 7.4 the system enforces indirect branch
targets on hardware platforms that support it. Until the LLVM
integration in Odin can be changed to emit proper branch targets
(e.g. endbr64 on amd64), we need to request the linker make the
resulting program opt-out of enforcement.
2025-03-27 10:37:36 -04:00
gingerBill
9b3d381af0 Fix another typo 2025-03-27 12:55:41 +00:00
gingerBill
1fc1a7fd51 Fix typos 2025-03-27 11:12:44 +00:00
gingerBill
0e6cc6ec4b Use working directory for aapt commands 2025-03-27 10:31:59 +00:00
gingerBill
caac504b88 Handle android flags to be more "optional" 2025-03-27 09:53:44 +00:00
gingerBill
e9fd565cfd Fix flags for odin package <platform> 2025-03-27 09:32:52 +00:00
gingerBill
e29b5ae8ed Use u64 for the command kind just in case 2025-03-27 09:27:54 +00:00
gingerBill
6689c722ad odin package android 2025-03-27 09:26:33 +00:00
gingerBill
729b6a4337 Merge pull request #4974 from harold-b/hb.fix-syscall-memory-dep
Add `~{memory}` clobber to syscall intrinsics for platforms where it was missing
2025-03-27 09:09:18 +00:00
Harold Brenes
6fda041e17 Add ~{memory} clobber to syscall intrinsics for platforms where it was not yet added.
This fixes #4972 and #4588.

As laytan asserts, there is no guarantee that a syscall will not modify memory that it just obtained from the user, or held onto via a previous syscall. Therefore this constraint should be required for all syscalls.
2025-03-26 19:25:06 -04:00
gingerBill
f13a075cd1 Begin work on odin package-android command 2025-03-26 18:03:36 +00:00
gingerBill
346836a098 Disable -build-mode:exe for -subtarget:android 2025-03-26 17:45:35 +00:00
gingerBill
eee450516e Improve bodge for android execute build 2025-03-26 17:45:04 +00:00
gingerBill
45ecafd7b1 Really bodgy android packing system for odin build 2025-03-26 17:33:10 +00:00
gingerBill
8e884c6292 Remove _PATH on android environment variables 2025-03-26 16:50:35 +00:00
gingerBill
d48e7bb0b8 Migrate ODIN_ANDROID_* constants to build_settings.cpp; -minimum-os-version:<int> for -subtarget:android 2025-03-26 16:05:21 +00:00
gingerBill
db82a49576 Fix typos 2025-03-26 13:30:18 +00:00
gingerBill
518634405c Add -show-more-timings for Android stuff 2025-03-26 13:28:57 +00:00
gingerBill
dfd0f18f47 Allow check for -subtarget:android 2025-03-26 13:19:40 +00:00
gingerBill
e6718fcfcc Very very rudimentary support for -target:linux_arm64 -subtarget:android 2025-03-26 13:09:39 +00:00
gingerBill
4b64317296 Make things rely less on #if guards 2025-03-26 09:41:23 +00:00
gingerBill
5e89e5ad8b Use store 2025-03-24 13:40:24 +00:00
gingerBill
fe6117fc63 Use store over memcpy 2025-03-24 13:14:54 +00:00
gingerBill
ce026ff2c4 Fix #4949 2025-03-24 13:13:25 +00:00
gingerBill
56e0ab7655 Fix #4952 2025-03-24 13:11:41 +00:00
gingerBill
acb578f184 Fix #4962 2025-03-24 11:35:10 +00:00
Laytan Laats
f85db012b8 fix off by one temp cstring and put objc names on permanent allocator to be safe
Fixes #4922
2025-03-21 22:56:19 +01:00
Laytan Laats
badd2c90f9 drop llvm 19 feature/microarch table
There was a bug in LLVM 19 introduced in https://github.com/llvm/llvm-project/pull/96249 and fixed in https://github.com/llvm/llvm-project/pull/118581.

Lets just use the LLVM 18 table for LLVM 19.
2025-03-20 16:51:27 +01:00
Laytan Laats
f80e73e036 few llvm 20 changes 2025-03-19 21:22:55 +01:00
gingerBill
809ee42873 Fix typo in passes 2025-03-18 16:46:15 +00:00
gingerBill
b2376d05a6 Fix typo 2025-03-18 16:39:08 +00:00
gingerBill
4c3c3a0631 Add new LLVM 20 passes 2025-03-18 16:21:08 +00:00
gingerBill
d209af5094 Update to LLVM 20.1.0 2025-03-18 15:39:18 +00:00
gingerBill
d3b1aaad18 Use :: rather than $ to try and fix mac SEL stuff 2025-03-12 12:53:26 +00:00
gingerBill
d5fe392edd Merge pull request #4927 from voutilad/openbsd-futex
Fix futex(2) usage on OpenBSD.
2025-03-11 15:51:57 +00:00
gingerBill
d15be94a0f Remove debug print 2025-03-11 15:50:46 +00:00
gingerBill
6e1c21411d Fix object name generation 2025-03-11 15:50:31 +00:00
Dave Voutila
0059507374 Fix futex(8) usage on OpenBSD. 2025-03-11 10:28:48 -04:00
gingerBill
7f61e53286 Fix #3955 2025-03-07 10:48:49 +00:00
gingerBill
97eeb25adc Fix #4244 2025-03-07 10:44:34 +00:00
gingerBill
af37ca1286 Fix #4573 2025-03-07 10:38:36 +00:00
gingerBill
168a41ba2c Fix #4803 2025-03-07 10:33:41 +00:00
gingerBill
f3210eccaf Fix #4866 2025-03-07 09:44:18 +00:00
gingerBill
97d410c2ae Fix #4909 2025-03-06 11:17:55 +00:00
gingerBill
55317b0987 Fix #4914 2025-03-06 11:15:27 +00:00
gingerBill
fcee19434e Fix object name generation to previous behaviour 2025-03-06 09:49:30 +00:00