|
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