| author | |
| committer | |
| log | b8c587eb4068d2fec5303641b7960d1ab885864b |
| tree | 46fbcd4899847ac84f4ee1de69617329a593c198 |
| parent | 46fb73071254658fae63539e450afed08a9f1e4b |
2 files changed, 28 insertions(+), 0 deletions(-)
lib/std/atomic/Atomic.zig+4| ... | @@ -374,6 +374,10 @@ const atomic_rmw_orderings = [_]Ordering{ | ... | @@ -374,6 +374,10 @@ const atomic_rmw_orderings = [_]Ordering{ |
| 374 | }; | 374 | }; |
| 375 | 375 | ||
| 376 | test "Atomic.swap" { | 376 | test "Atomic.swap" { |
| 377 | // TODO: Re-enable when LLVM is released with a bugfix for isel of | ||
| 378 | // atomic load (currently fixed on trunk, broken on 15.0.2) | ||
| 379 | if (builtin.cpu.arch == .powerpc64le) return error.SkipZigTest; | ||
| 380 | |||
| 377 | inline for (atomic_rmw_orderings) |ordering| { | 381 | inline for (atomic_rmw_orderings) |ordering| { |
| 378 | var x = Atomic(usize).init(5); | 382 | var x = Atomic(usize).init(5); |
| 379 | try testing.expectEqual(x.swap(10, ordering), 5); | 383 | try testing.expectEqual(x.swap(10, ordering), 5); |
test/tests.zig+24| ... | @@ -315,6 +315,30 @@ const test_targets = blk: { | ... | @@ -315,6 +315,30 @@ const test_targets = blk: { |
| 315 | // .link_libc = true, | 315 | // .link_libc = true, |
| 316 | //}, | 316 | //}, |
| 317 | 317 | ||
| 318 | .{ | ||
| 319 | .target = .{ | ||
| 320 | .cpu_arch = .powerpc64le, | ||
| 321 | .os_tag = .linux, | ||
| 322 | .abi = .none, | ||
| 323 | }, | ||
| 324 | }, | ||
| 325 | .{ | ||
| 326 | .target = .{ | ||
| 327 | .cpu_arch = .powerpc64le, | ||
| 328 | .os_tag = .linux, | ||
| 329 | .abi = .musl, | ||
| 330 | }, | ||
| 331 | .link_libc = true, | ||
| 332 | }, | ||
| 333 | .{ | ||
| 334 | .target = .{ | ||
| 335 | .cpu_arch = .powerpc64le, | ||
| 336 | .os_tag = .linux, | ||
| 337 | .abi = .gnu, | ||
| 338 | }, | ||
| 339 | .link_libc = true, | ||
| 340 | }, | ||
| 341 | |||
| 318 | .{ | 342 | .{ |
| 319 | .target = .{ | 343 | .target = .{ |
| 320 | .cpu_arch = .riscv64, | 344 | .cpu_arch = .riscv64, |