authorgravatar for quae@daurnimator.comdaurnimator <quae@daurnimator.com> 2020-04-05 14:08:25+10:00
committergravatar for quae@daurnimator.comdaurnimator <quae@daurnimator.com> 2020-04-05 14:08:25+10:00
loge9e43ed0d39f623d424f87fbd035f949cf5a3227
treeeb06e5334edfbd3be008fd9287f07b11a8336833
parentf9474443620c9c654c0a888a928557f8ec2815c8
signaturelock-open Commit is signed but in an unrecognized format.

compiler_rt/atomics: be consistent with `const value`


1 files changed, 11 insertions(+), 10 deletions(-)

lib/std/special/compiler_rt/atomics.zig+11-10
......@@ -154,7 +154,7 @@ fn atomicExchangeFn(comptime T: type) fn (*T, T, i32) callconv(.C) T {
154154 if (@sizeOf(T) > largest_atomic_size) {
155155 var sl = spinlocks.get(@ptrToInt(ptr));
156156 defer sl.release();
157 var value = ptr.*;
157 const value = ptr.*;
158158 ptr.* = val;
159159 return value;
160160 } else {
......@@ -177,11 +177,12 @@ fn atomicCompareExchangeFn(comptime T: type) fn (*T, *T, T, i32, i32) callconv(.
177177 if (@sizeOf(T) > largest_atomic_size) {
178178 var sl = spinlocks.get(@ptrToInt(ptr));
179179 defer sl.release();
180 if (ptr.* == expected.*) {
180 const value = ptr.*;
181 if (value == expected.*) {
181182 ptr.* = desired;
182183 return 1;
183184 }
184 expected.* = ptr.*;
185 expected.* = value;
185186 return 0;
186187 } else {
187188 if (@cmpxchgStrong(T, ptr, expected.*, desired, .SeqCst, .SeqCst)) |old_value| {
......@@ -208,14 +209,14 @@ fn fetchFn(comptime T: type, comptime op: builtin.AtomicRmwOp) fn (*T, T, i32) c
208209 var sl = spinlocks.get(@ptrToInt(ptr));
209210 defer sl.release();
210211
211 var value = ptr.*;
212 const value = ptr.*;
212213 ptr.* = switch (op) {
213 .Add => ptr.* +% val,
214 .Sub => ptr.* -% val,
215 .And => ptr.* & val,
216 .Nand => ~(ptr.* & val),
217 .Or => ptr.* | val,
218 .Xor => ptr.* ^ val,
214 .Add => value +% val,
215 .Sub => value -% val,
216 .And => value & val,
217 .Nand => ~(value & val),
218 .Or => value | val,
219 .Xor => value ^ val,
219220 else => @compileError("unsupported atomic op"),
220221 };
221222