Skip to content

Commit caceac0

Browse files
committed
Remove old-moded atomic intrinsics (#3200)
1 parent c47342e commit caceac0

File tree

3 files changed

+11
-29
lines changed

3 files changed

+11
-29
lines changed

src/rustc/middle/trans/foreign.rs

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -800,65 +800,63 @@ fn trans_intrinsic(ccx: @crate_ctxt, decl: ValueRef, item: @ast::foreign_item,
800800
some(substs), some(item.span));
801801
let mut bcx = top_scope_block(fcx, none), lltop = bcx.llbb;
802802
match ccx.sess.str_of(item.ident) {
803-
// NB: Transitionary, de-mode-ing. Remove the first string of each
804-
// pattern when the old intrinsics are gone.
805-
~"atomic_xchng" | ~"atomic_xchg" => {
803+
~"atomic_xchg" => {
806804
let old = AtomicRMW(bcx, Xchg,
807805
get_param(decl, first_real_arg),
808806
get_param(decl, first_real_arg + 1u),
809807
SequentiallyConsistent);
810808
Store(bcx, old, fcx.llretptr);
811809
}
812-
~"atomic_xchng_acq" | ~"atomic_xchg_acq" => {
810+
~"atomic_xchg_acq" => {
813811
let old = AtomicRMW(bcx, Xchg,
814812
get_param(decl, first_real_arg),
815813
get_param(decl, first_real_arg + 1u),
816814
Acquire);
817815
Store(bcx, old, fcx.llretptr);
818816
}
819-
~"atomic_xchng_rel" | ~"atomic_xchg_rel" => {
817+
~"atomic_xchg_rel" => {
820818
let old = AtomicRMW(bcx, Xchg,
821819
get_param(decl, first_real_arg),
822820
get_param(decl, first_real_arg + 1u),
823821
Release);
824822
Store(bcx, old, fcx.llretptr);
825823
}
826-
~"atomic_add" | ~"atomic_xadd" => {
824+
~"atomic_xadd" => {
827825
let old = AtomicRMW(bcx, lib::llvm::Add,
828826
get_param(decl, first_real_arg),
829827
get_param(decl, first_real_arg + 1u),
830828
SequentiallyConsistent);
831829
Store(bcx, old, fcx.llretptr);
832830
}
833-
~"atomic_add_acq" | ~"atomic_xadd_acq" => {
831+
~"atomic_xadd_acq" => {
834832
let old = AtomicRMW(bcx, lib::llvm::Add,
835833
get_param(decl, first_real_arg),
836834
get_param(decl, first_real_arg + 1u),
837835
Acquire);
838836
Store(bcx, old, fcx.llretptr);
839837
}
840-
~"atomic_add_rel" | ~"atomic_xadd_rel" => {
838+
~"atomic_xadd_rel" => {
841839
let old = AtomicRMW(bcx, lib::llvm::Add,
842840
get_param(decl, first_real_arg),
843841
get_param(decl, first_real_arg + 1u),
844842
Release);
845843
Store(bcx, old, fcx.llretptr);
846844
}
847-
~"atomic_sub" | ~"atomic_xsub" => {
845+
~"atomic_xsub" => {
848846
let old = AtomicRMW(bcx, lib::llvm::Sub,
849847
get_param(decl, first_real_arg),
850848
get_param(decl, first_real_arg + 1u),
851849
SequentiallyConsistent);
852850
Store(bcx, old, fcx.llretptr);
853851
}
854-
~"atomic_sub_acq" | ~"atomic_xsub_acq" => {
852+
~"atomic_xsub_acq" => {
855853
let old = AtomicRMW(bcx, lib::llvm::Sub,
856854
get_param(decl, first_real_arg),
857855
get_param(decl, first_real_arg + 1u),
858856
Acquire);
859857
Store(bcx, old, fcx.llretptr);
860858
}
861-
~"atomic_sub_rel" | ~"atomic_xsub_rel" => {
859+
~"atomic_xsub_rel" => {
862860
let old = AtomicRMW(bcx, lib::llvm::Sub,
863861
get_param(decl, first_real_arg),
864862
get_param(decl, first_real_arg + 1u),

src/rustc/middle/trans/type_use.rs

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -90,16 +90,10 @@ fn type_uses_for(ccx: @crate_ctxt, fn_id: def_id, n_tps: uint)
9090
~"get_tydesc" | ~"needs_drop" => {
9191
use_tydesc
9292
}
93-
// NB: new intrinsics
9493
~"atomic_xchg" | ~"atomic_xadd" | ~"atomic_xsub" |
9594
~"atomic_xchg_acq" | ~"atomic_xadd_acq" | ~"atomic_xsub_acq" |
96-
~"atomic_xchg_rel" | ~"atomic_xadd_rel" | ~"atomic_xsub_rel" |
97-
// old intrinsics
98-
~"atomic_xchng" | ~"atomic_add" | ~"atomic_sub" |
99-
~"atomic_xchng_acq" | ~"atomic_add_acq" | ~"atomic_sub_acq" |
100-
~"atomic_xchng_rel" | ~"atomic_add_rel" | ~"atomic_sub_rel" => {
101-
0u
102-
}
95+
~"atomic_xchg_rel" | ~"atomic_xadd_rel" | ~"atomic_xsub_rel" =>
96+
{ 0u }
10397
~"visit_tydesc" | ~"forget" | ~"addr_of" => {
10498
0u
10599
}

src/rustc/middle/typeck/check.rs

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2508,16 +2508,6 @@ fn check_intrinsic_type(ccx: @crate_ctxt, it: @ast::foreign_item) {
25082508
}
25092509
~"needs_drop" => (1u, ~[], ty::mk_bool(tcx)),
25102510
2511-
// NB: Old intrinsics.
2512-
~"atomic_xchng" | ~"atomic_add" | ~"atomic_sub" |
2513-
~"atomic_xchng_acq" | ~"atomic_add_acq" | ~"atomic_sub_acq" |
2514-
~"atomic_xchng_rel" | ~"atomic_add_rel" | ~"atomic_sub_rel" => {
2515-
(0u, ~[arg(ast::by_mutbl_ref, ty::mk_int(tcx)),
2516-
arg(ast::by_val, ty::mk_int(tcx))],
2517-
ty::mk_int(tcx))
2518-
}
2519-
2520-
// NB: Transitionary, de-mode-ing.
25212511
~"atomic_xchg" | ~"atomic_xadd" | ~"atomic_xsub" |
25222512
~"atomic_xchg_acq" | ~"atomic_xadd_acq" | ~"atomic_xsub_acq" |
25232513
~"atomic_xchg_rel" | ~"atomic_xadd_rel" | ~"atomic_xsub_rel" => {

0 commit comments

Comments
 (0)