31 #include "interpreter/interpreter.hpp"
32 #include "interpreter/interpreterRuntime.hpp"
33 #include "interpreter/linkResolver.hpp"
34 #include "interpreter/templateTable.hpp"
35 #include "memory/oopFactory.hpp"
36 #include "memory/universe.inline.hpp"
37 #include "oops/constantPool.hpp"
38 #include "oops/instanceKlass.hpp"
39 #include "oops/methodData.hpp"
40 #include "oops/objArrayKlass.hpp"
41 #include "oops/oop.inline.hpp"
42 #include "oops/symbol.hpp"
43 #include "prims/jvmtiExport.hpp"
44 #include "prims/nativeLookup.hpp"
45 #include "runtime/atomic.inline.hpp"
46 #include "runtime/biasedLocking.hpp"
47 #include "runtime/compilationPolicy.hpp"
48 #include "runtime/deoptimization.hpp"
49 #include "runtime/fieldDescriptor.hpp"
50 #include "runtime/handles.inline.hpp"
51 #include "runtime/interfaceSupport.hpp"
52 #include "runtime/java.hpp"
53 #include "runtime/jfieldIDWorkaround.hpp"
54 #include "runtime/osThread.hpp"
55 #include "runtime/sharedRuntime.hpp"
56 #include "runtime/stubRoutines.hpp"
57 #include "runtime/synchronizer.hpp"
58 #include "runtime/threadCritical.hpp"
59 #include "utilities/events.hpp"
60 #ifdef TARGET_ARCH_x86
61 # include "vm_version_x86.hpp"
62 #endif
63 #ifdef TARGET_ARCH_sparc
64 # include "vm_version_sparc.hpp"
65 #endif
66 #ifdef TARGET_ARCH_zero
67 # include "vm_version_zero.hpp"
68 #endif
69 #ifdef TARGET_ARCH_arm
70 # include "vm_version_arm.hpp"
71 #endif
72 #ifdef TARGET_ARCH_ppc
73 # include "vm_version_ppc.hpp"
74 #endif
75 #ifdef COMPILER2
76 #include "opto/runtime.hpp"
77 #endif
78
79 PRAGMA_FORMAT_MUTE_WARNINGS_FOR_GCC
80
81 class UnlockFlagSaver {
82 private:
83 JavaThread* _thread;
84 bool _do_not_unlock;
85 public:
86 UnlockFlagSaver(JavaThread* t) {
87 _thread = t;
88 _do_not_unlock = t->do_not_unlock_if_synchronized();
89 t->set_do_not_unlock_if_synchronized(false);
90 }
91 ~UnlockFlagSaver() {
92 _thread->set_do_not_unlock_if_synchronized(_do_not_unlock);
93 }
94 };
|
31 #include "interpreter/interpreter.hpp"
32 #include "interpreter/interpreterRuntime.hpp"
33 #include "interpreter/linkResolver.hpp"
34 #include "interpreter/templateTable.hpp"
35 #include "memory/oopFactory.hpp"
36 #include "memory/universe.inline.hpp"
37 #include "oops/constantPool.hpp"
38 #include "oops/instanceKlass.hpp"
39 #include "oops/methodData.hpp"
40 #include "oops/objArrayKlass.hpp"
41 #include "oops/oop.inline.hpp"
42 #include "oops/symbol.hpp"
43 #include "prims/jvmtiExport.hpp"
44 #include "prims/nativeLookup.hpp"
45 #include "runtime/atomic.inline.hpp"
46 #include "runtime/biasedLocking.hpp"
47 #include "runtime/compilationPolicy.hpp"
48 #include "runtime/deoptimization.hpp"
49 #include "runtime/fieldDescriptor.hpp"
50 #include "runtime/handles.inline.hpp"
51 #include "runtime/icache.hpp"
52 #include "runtime/interfaceSupport.hpp"
53 #include "runtime/java.hpp"
54 #include "runtime/jfieldIDWorkaround.hpp"
55 #include "runtime/osThread.hpp"
56 #include "runtime/sharedRuntime.hpp"
57 #include "runtime/stubRoutines.hpp"
58 #include "runtime/synchronizer.hpp"
59 #include "runtime/threadCritical.hpp"
60 #include "utilities/events.hpp"
61 #ifdef COMPILER2
62 #include "opto/runtime.hpp"
63 #endif
64
65 PRAGMA_FORMAT_MUTE_WARNINGS_FOR_GCC
66
67 class UnlockFlagSaver {
68 private:
69 JavaThread* _thread;
70 bool _do_not_unlock;
71 public:
72 UnlockFlagSaver(JavaThread* t) {
73 _thread = t;
74 _do_not_unlock = t->do_not_unlock_if_synchronized();
75 t->set_do_not_unlock_if_synchronized(false);
76 }
77 ~UnlockFlagSaver() {
78 _thread->set_do_not_unlock_if_synchronized(_do_not_unlock);
79 }
80 };
|