src/cpu/sparc/vm/templateTable_sparc.cpp

changeset 4542
db9981fd3124
parent 4338
fd74228fd5ca
child 4643
f16e75e0cf11
equal deleted inserted replaced
4461:46e60405583b 4542:db9981fd3124
32 #include "oops/oop.inline.hpp" 32 #include "oops/oop.inline.hpp"
33 #include "prims/methodHandles.hpp" 33 #include "prims/methodHandles.hpp"
34 #include "runtime/sharedRuntime.hpp" 34 #include "runtime/sharedRuntime.hpp"
35 #include "runtime/stubRoutines.hpp" 35 #include "runtime/stubRoutines.hpp"
36 #include "runtime/synchronizer.hpp" 36 #include "runtime/synchronizer.hpp"
37 #include "utilities/macros.hpp"
37 38
38 #ifndef CC_INTERP 39 #ifndef CC_INTERP
39 #define __ _masm-> 40 #define __ _masm->
40 41
41 // Misc helpers 42 // Misc helpers
51 BarrierSet::Name barrier, 52 BarrierSet::Name barrier,
52 bool precise) { 53 bool precise) {
53 assert(tmp != val && tmp != base && tmp != index, "register collision"); 54 assert(tmp != val && tmp != base && tmp != index, "register collision");
54 assert(index == noreg || offset == 0, "only one offset"); 55 assert(index == noreg || offset == 0, "only one offset");
55 switch (barrier) { 56 switch (barrier) {
56 #ifndef SERIALGC 57 #if INCLUDE_ALL_GCS
57 case BarrierSet::G1SATBCT: 58 case BarrierSet::G1SATBCT:
58 case BarrierSet::G1SATBCTLogging: 59 case BarrierSet::G1SATBCTLogging:
59 { 60 {
60 // Load and record the previous value. 61 // Load and record the previous value.
61 __ g1_write_barrier_pre(base, index, offset, 62 __ g1_write_barrier_pre(base, index, offset,
80 } 81 }
81 __ g1_write_barrier_post(base, val, tmp); 82 __ g1_write_barrier_post(base, val, tmp);
82 } 83 }
83 } 84 }
84 break; 85 break;
85 #endif // SERIALGC 86 #endif // INCLUDE_ALL_GCS
86 case BarrierSet::CardTableModRef: 87 case BarrierSet::CardTableModRef:
87 case BarrierSet::CardTableExtension: 88 case BarrierSet::CardTableExtension:
88 { 89 {
89 if (index == noreg ) { 90 if (index == noreg ) {
90 assert(Assembler::is_simm13(offset), "fix this code"); 91 assert(Assembler::is_simm13(offset), "fix this code");

mercurial