|
11 | 11 | #![allow(non_uppercase_statics)]
|
12 | 12 |
|
13 | 13 | use llvm;
|
14 |
| -use llvm::{SequentiallyConsistent, Acquire, Release, Xchg, ValueRef}; |
| 14 | +use llvm::{SequentiallyConsistent, Acquire, Release, AtomicXchg, ValueRef}; |
15 | 15 | use middle::subst;
|
16 | 16 | use middle::subst::FnSpace;
|
17 | 17 | use middle::trans::base::*;
|
@@ -510,17 +510,17 @@ pub fn trans_intrinsic_call<'blk, 'tcx>(mut bcx: Block<'blk, 'tcx>, node: ast::N
|
510 | 510 | // These are all AtomicRMW ops
|
511 | 511 | op => {
|
512 | 512 | let atom_op = match op {
|
513 |
| - "xchg" => llvm::Xchg, |
514 |
| - "xadd" => llvm::Add, |
515 |
| - "xsub" => llvm::Sub, |
516 |
| - "and" => llvm::And, |
517 |
| - "nand" => llvm::Nand, |
518 |
| - "or" => llvm::Or, |
519 |
| - "xor" => llvm::Xor, |
520 |
| - "max" => llvm::Max, |
521 |
| - "min" => llvm::Min, |
522 |
| - "umax" => llvm::UMax, |
523 |
| - "umin" => llvm::UMin, |
| 513 | + "xchg" => llvm::AtomicXchg, |
| 514 | + "xadd" => llvm::AtomicAdd, |
| 515 | + "xsub" => llvm::AtomicSub, |
| 516 | + "and" => llvm::AtomicAnd, |
| 517 | + "nand" => llvm::AtomicNand, |
| 518 | + "or" => llvm::AtomicOr, |
| 519 | + "xor" => llvm::AtomicXor, |
| 520 | + "max" => llvm::AtomicMax, |
| 521 | + "min" => llvm::AtomicMin, |
| 522 | + "umax" => llvm::AtomicUMax, |
| 523 | + "umin" => llvm::AtomicUMin, |
524 | 524 | _ => ccx.sess().fatal("unknown atomic operation")
|
525 | 525 | };
|
526 | 526 |
|
|
0 commit comments