Skip to content

Commit 865a42b

Browse files
authored
flambda-backend: Implement 5.x atomic primitives in Flambda 2 and use them in the stdlib (#2060)
* Implement the atomic primitives in Flambda 2 * Use the atomic primitives in stdlib/atomic.ml * Use the atomic primitives in stdlib/stdlib.ml
1 parent ce5b41f commit 865a42b

File tree

2 files changed

+0
-15
lines changed

2 files changed

+0
-15
lines changed

stdlib/atomic.ml

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -14,19 +14,11 @@
1414

1515
type !'a t
1616

17-
(* BACKPORT BEGIN switch to primtiives
1817
external make : 'a -> 'a t = "%makemutable"
1918
external get : 'a t -> 'a = "%atomic_load"
2019
external exchange : 'a t -> 'a -> 'a = "%atomic_exchange"
2120
external compare_and_set : 'a t -> 'a -> 'a -> bool = "%atomic_cas"
2221
external fetch_and_add : int t -> int -> int = "%atomic_fetch_add"
23-
*)
24-
external make : 'a -> 'a t = "caml_atomic_make"
25-
external get : 'a t -> 'a = "caml_atomic_load"
26-
external exchange : 'a t -> 'a -> 'a = "caml_atomic_exchange"
27-
external compare_and_set : 'a t -> 'a -> 'a -> bool = "caml_atomic_cas"
28-
external fetch_and_add : int t -> int -> int = "caml_atomic_fetch_add"
29-
(* BACKPORT END *)
3022

3123
external ignore : 'a -> unit = "%ignore"
3224

stdlib/stdlib.ml

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -557,17 +557,10 @@ external sys_exit : int -> 'a = "caml_sys_exit"
557557

558558
(* for at_exit *)
559559
type 'a atomic_t
560-
(* BACKPORT BEGIN
561560
external atomic_make : 'a -> 'a atomic_t = "%makemutable"
562561
external atomic_get : 'a atomic_t -> 'a = "%atomic_load"
563562
external atomic_compare_and_set : 'a atomic_t -> 'a -> 'a -> bool
564563
= "%atomic_cas"
565-
*)
566-
external atomic_make : 'a -> 'a atomic_t = "caml_atomic_make"
567-
external atomic_get : 'a atomic_t -> 'a = "caml_atomic_load"
568-
external atomic_compare_and_set : 'a atomic_t -> 'a -> 'a -> bool
569-
= "caml_atomic_cas"
570-
(* BACKPORT END *)
571564

572565
let exit_function = atomic_make flush_all
573566

0 commit comments

Comments
 (0)