265 Commits

Author SHA1 Message Date
kbkpbot
5d4e89f888
os,runtime: move some C struct and fn def to builtin (#24942) 2025-07-22 07:55:53 +03:00
kbkpbot
fcbe2e6ce7
sync: add thread local storage (TLS) support (#24849) 2025-07-06 17:42:33 +03:00
Delyan Angelov
2c2ded2e0b
sync: use an atomic counter in test_waitgroup_go in waitgroup_test.v 2025-06-30 21:57:26 +03:00
kbkpbot
bd465b5254
sync: use SpinLock for channel (fix #24680) (#24802) 2025-06-28 14:55:06 +03:00
kbkpbot
d1d43abf5c
sync: fix spin lock, add destroy() and try_lock(), add valgrind annotate support (#24798) 2025-06-27 16:13:44 +03:00
Laurent Cheylus
6b45931598
sync: improve documentation (#24799) 2025-06-27 10:29:09 +03:00
Delyan Angelov
f62b5fd7f2
sync: add implementation for WaitGroup.go/1, add test (#24797) 2025-06-27 02:03:07 +03:00
Laurent Cheylus
3d320afa65
sync: fix documentation for new_spin_lock function (#24795) 2025-06-26 20:46:40 +03:00
kbkpbot
06c6554480
sync: add SpinLock (#24788) 2025-06-26 16:34:00 +03:00
Delyan Angelov
99be39cbd1
ci: remove the // vtest flaky: true tags from the remaining tests (#24379) 2025-06-19 20:16:49 +03:00
kbkpbot
a9f4a942fb
sync.stdatomic: add atomic_thread_fence(), cpu_relax() (#24690) 2025-06-11 18:48:23 +03:00
kbkpbot
0c495d07d7
sync.stdatomic: fix bug with add() and sub() returning the new values, add voidptr support, add swap() and compare_and_swap() (#24685) 2025-06-10 09:05:11 +03:00
Delyan Angelov
01770de8b5
sync: increase retries for vlib/sync/select_close_test.v to 3, to reduce CI false positives in the gcc-windows job 2025-06-08 12:56:08 +03:00
kbkpbot
d6a2a5e925
sync: add condition support (#24574) 2025-05-29 18:00:17 +03:00
kbkpbot
7b8c9fb715
sync.stdatomic: turn panic() in new_atomic[T]() into a $compile_error() (#24573) 2025-05-29 10:34:57 +03:00
kbkpbot
ed7a8a34f1
sync.stdatomic: add atomic types (#24561) 2025-05-25 13:10:08 +03:00
kbkpbot
a993fb04d8
parser: fix duplicate mod imports (fix #24552) (#24559) 2025-05-24 11:05:25 +03:00
kbkpbot
a3f4b06b87
sync.stdatomic: workaround for libatomic.a indirect symbols tcc bug (fix #23924) (#24472) 2025-05-13 16:22:16 +03:00
Alexander Medvednikov
7d57a19d7e checker: do not allow &u8(0), force nil like we do with &Type(0) 2025-05-03 22:37:51 +03:00
Mike
55b16fbdf2
sync: remove the call to C.pthread_rwlockattr_setpshared (not needed, since it is the default on POSIX) (#24166) 2025-04-09 13:13:29 +03:00
Delyan Angelov
dd083e7687
sync.pool: restore the parallel operation (surrounding the cb call in process_in_thread in a lock in 1b52538, effectively disabled parallelism) 2025-03-25 09:16:43 +02:00
Felipe Pena
1b52538dff
sync: fix a helgrind false positive, for a data race, on PoolProcessor (#24023) 2025-03-24 22:04:10 +02:00
Delyan Angelov
a80bc23314
tools: cleanup entries from the hardcoded skip_files list in common.v (used by v test, v test-self etc); use the new // vtest build: syntax to mark the tests instead (#23918) 2025-03-13 19:51:51 +02:00
Delyan Angelov
3f44780be4
sync: cleanup tcc flag declarations on musl based distros like Alpine as well (#23783) 2025-02-22 14:24:55 +02:00
Delyan Angelov
7d60ce0061
sync: use #flag $when_first_existing() to cleanup vlib/sync/stdatomic/1.declarations.c.v (followup to #23780) (#23781) 2025-02-21 22:21:11 +02:00
Delyan Angelov
c5b26c441c
sync: support x86_64-alt-linux gcc paths too when tcc is used (needed for ALT Linux) 2025-02-20 17:16:24 +02:00
Delyan Angelov
3bc862dbb0
log,sync: fix macos CI failure when log.ThreadSafeLog is used explicitly in v download (#23613) 2025-01-30 11:41:23 +02:00
Delyan Angelov
791d0d30ea
v: use -check-unused-fn-args to cleanup the compiler code itself 2024-11-18 12:10:03 +02:00
Felipe Pena
af875ede92
v: do a minor optimizations on cmd/v (#22880) 2024-11-17 13:17:19 +02:00
yuyi
da3112e545
all: replace fn name '@xxx' with 'xxx' (#22506) 2024-10-12 22:17:02 +03:00
Delyan Angelov
469a532caa
sync.stdatomic: add OpenSUSE paths for libatomic 2024-09-14 21:31:57 +03:00
yuyi
008aaad999
fmt: remove the prefixed module name of const names, that are in the same module (related #22183) (#22185) 2024-09-10 11:25:56 +03:00
Ikko Eltociear Ashimine
e1847cac9c
sync: fix typo on atomic_test.v (#22168) 2024-09-06 19:50:15 +03:00
yuyi
4bce71e12f
fmt: fix enum/struct_decl/struct_init fields with empty newlines (#22051) 2024-08-15 17:28:52 +03:00
yuyi
c51d30bf53
fmt: fix alignment of struct init fields (#22025) 2024-08-11 09:11:24 +03:00
yuyi
19f080ffb8
all: change single blank comment to blank line (#22016) 2024-08-09 14:55:58 +03:00
yuyi
79ee4ae046
fmt: fix alignment of enumeration types (#21999) 2024-08-07 15:46:50 +03:00
yuyi
ddb6685d8a
fmt: fix and simplify align of struct fields (#21995) 2024-08-05 20:23:39 +03:00
Delyan Angelov
776e7ad0b1
sync,os,thirdparty: fix cross compilation from macos to windows (#21484) 2024-05-10 22:04:52 +03:00
Delyan Angelov
937a36ac1c
sync.stdatomic: add paths for compilation with musl on Gentoo (#21400) 2024-05-02 13:51:45 +03:00
Delyan Angelov
40da0f75d8
sync.stdatomic: add flag lines for gcc 14 too 2024-04-25 17:20:21 +03:00
Delyan Angelov
07e6f2ec7b
sync: add Gentoo paths for libatomic 2024-04-25 16:52:31 +03:00
Turiiya
1a35a783f1
breaking,checker: disallow initializing private struct fields outside structs module (#21183) 2024-04-12 13:53:02 +03:00
Turiiya
c086bee5be
breaking,vlib: update handling of imports whose symbols are not directly used in imported file, remove pub const is_used = 1 workarounds (#21160) 2024-04-01 22:07:05 +03:00
Turiiya
f77bb32044
all: fix typos (#21089) 2024-03-25 12:18:27 +02:00
Delyan Angelov
d2dcf6a307
sync: support more gcc version specific search locations on linux with tcc 2024-02-26 23:05:22 +02:00
Turiiya
d485cceee8
doc: update trim_doc_node_description, make module readmes more uniform (#20792) 2024-02-12 12:38:47 +02:00
Kim Shrier
341e79fc63
sync: fix FreeBSD implementation of sync functions (#20483) 2024-01-11 12:03:34 +02:00
Bakul Shah
426bcd6972
sync: add mutex.try*lock functions for FreeBSD too (#20482) 2024-01-11 11:09:57 +02:00
kbkpbot
d7fc66f054
sync: add .try_lock() to mutex/rwmutex, add tests (#20381) 2024-01-05 15:57:04 +02:00