authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2022-01-02 17:58:54-07:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2022-01-02 17:58:54-07:00
log5e086b2b4c4558681cc23c6cc602704fd06d6fc8
tree675651f4169069d88a50146d4815805bf2069ba2
parentd3f87f8ac01039722197a13a12342fc747a90567

compiler-rt: small refactor in atomics


1 files changed, 5 insertions(+), 9 deletions(-)

lib/std/special/compiler_rt/atomics.zig+5-9
......@@ -119,15 +119,6 @@ fn __atomic_compare_exchange(
119119 return 0;
120120}
121121
122comptime {
123 if (supports_atomic_ops) {
124 @export(__atomic_load, .{ .name = "__atomic_load", .linkage = linkage });
125 @export(__atomic_store, .{ .name = "__atomic_store", .linkage = linkage });
126 @export(__atomic_exchange, .{ .name = "__atomic_exchange", .linkage = linkage });
127 @export(__atomic_compare_exchange, .{ .name = "__atomic_compare_exchange", .linkage = linkage });
128 }
129}
130
131122// Specialized versions of the GCC atomic builtin functions.
132123// LLVM emits those iff the object size is known and the pointers are correctly
133124// aligned.
......@@ -380,6 +371,11 @@ fn __atomic_fetch_nand_8(ptr: *u64, val: u64, model: i32) callconv(.C) u64 {
380371
381372comptime {
382373 if (supports_atomic_ops) {
374 @export(__atomic_load, .{ .name = "__atomic_load", .linkage = linkage });
375 @export(__atomic_store, .{ .name = "__atomic_store", .linkage = linkage });
376 @export(__atomic_exchange, .{ .name = "__atomic_exchange", .linkage = linkage });
377 @export(__atomic_compare_exchange, .{ .name = "__atomic_compare_exchange", .linkage = linkage });
378
383379 @export(__atomic_fetch_add_1, .{ .name = "__atomic_fetch_add_1", .linkage = linkage });
384380 @export(__atomic_fetch_add_2, .{ .name = "__atomic_fetch_add_2", .linkage = linkage });
385381 @export(__atomic_fetch_add_4, .{ .name = "__atomic_fetch_add_4", .linkage = linkage });