Commit Graph

5384 Commits

Author SHA1 Message Date
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
gingerBill 8214892b5b Merge pull request #4893 from Barinzaya/for-bitset-ctz
Use CTZ in `for in bit_set` codegen
2025-03-04 07:51:09 +00:00