src/share/vm/classfile/javaClasses.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File hsx-gc Sdiff src/share/vm/classfile

src/share/vm/classfile/javaClasses.cpp

Print this page
rev 3849 : imported patch thread.inline.hpp


  30 #include "code/debugInfo.hpp"
  31 #include "code/pcDesc.hpp"
  32 #include "compiler/compilerOracle.hpp"
  33 #include "interpreter/interpreter.hpp"
  34 #include "memory/oopFactory.hpp"
  35 #include "memory/resourceArea.hpp"
  36 #include "memory/universe.inline.hpp"
  37 #include "oops/fieldStreams.hpp"
  38 #include "oops/instanceKlass.hpp"
  39 #include "oops/instanceMirrorKlass.hpp"
  40 #include "oops/klass.hpp"
  41 #include "oops/method.hpp"
  42 #include "oops/symbol.hpp"
  43 #include "oops/typeArrayOop.hpp"
  44 #include "runtime/fieldDescriptor.hpp"
  45 #include "runtime/handles.inline.hpp"
  46 #include "runtime/interfaceSupport.hpp"
  47 #include "runtime/java.hpp"
  48 #include "runtime/javaCalls.hpp"
  49 #include "runtime/safepoint.hpp"

  50 #include "runtime/vframe.hpp"
  51 #include "utilities/preserveException.hpp"
  52 #ifdef TARGET_OS_FAMILY_linux
  53 # include "thread_linux.inline.hpp"
  54 #endif
  55 #ifdef TARGET_OS_FAMILY_solaris
  56 # include "thread_solaris.inline.hpp"
  57 #endif
  58 #ifdef TARGET_OS_FAMILY_windows
  59 # include "thread_windows.inline.hpp"
  60 #endif
  61 #ifdef TARGET_OS_FAMILY_bsd
  62 # include "thread_bsd.inline.hpp"
  63 #endif
  64 
  65 #define INJECTED_FIELD_COMPUTE_OFFSET(klass, name, signature, may_be_java)    \
  66   klass::_##name##_offset = JavaClasses::compute_injected_offset(JavaClasses::klass##_##name##_enum);
  67 
  68 #define DECLARE_INJECTED_FIELD(klass, name, signature, may_be_java)           \
  69   { SystemDictionary::WK_KLASS_ENUM_NAME(klass), vmSymbols::VM_SYMBOL_ENUM_NAME(name##_name), vmSymbols::VM_SYMBOL_ENUM_NAME(signature), may_be_java },
  70 
  71 InjectedField JavaClasses::_injected_fields[] = {
  72   ALL_INJECTED_FIELDS(DECLARE_INJECTED_FIELD)
  73 };
  74 
  75 int JavaClasses::compute_injected_offset(InjectedFieldID id) {
  76   return _injected_fields[id].compute_offset();
  77 }
  78 
  79 
  80 InjectedField* JavaClasses::get_injected(Symbol* class_name, int* field_count) {
  81   *field_count = 0;
  82 
  83   vmSymbols::SID sid = vmSymbols::find_sid(class_name);




  30 #include "code/debugInfo.hpp"
  31 #include "code/pcDesc.hpp"
  32 #include "compiler/compilerOracle.hpp"
  33 #include "interpreter/interpreter.hpp"
  34 #include "memory/oopFactory.hpp"
  35 #include "memory/resourceArea.hpp"
  36 #include "memory/universe.inline.hpp"
  37 #include "oops/fieldStreams.hpp"
  38 #include "oops/instanceKlass.hpp"
  39 #include "oops/instanceMirrorKlass.hpp"
  40 #include "oops/klass.hpp"
  41 #include "oops/method.hpp"
  42 #include "oops/symbol.hpp"
  43 #include "oops/typeArrayOop.hpp"
  44 #include "runtime/fieldDescriptor.hpp"
  45 #include "runtime/handles.inline.hpp"
  46 #include "runtime/interfaceSupport.hpp"
  47 #include "runtime/java.hpp"
  48 #include "runtime/javaCalls.hpp"
  49 #include "runtime/safepoint.hpp"
  50 #include "runtime/thread.inline.hpp"
  51 #include "runtime/vframe.hpp"
  52 #include "utilities/preserveException.hpp"












  53 
  54 #define INJECTED_FIELD_COMPUTE_OFFSET(klass, name, signature, may_be_java)    \
  55   klass::_##name##_offset = JavaClasses::compute_injected_offset(JavaClasses::klass##_##name##_enum);
  56 
  57 #define DECLARE_INJECTED_FIELD(klass, name, signature, may_be_java)           \
  58   { SystemDictionary::WK_KLASS_ENUM_NAME(klass), vmSymbols::VM_SYMBOL_ENUM_NAME(name##_name), vmSymbols::VM_SYMBOL_ENUM_NAME(signature), may_be_java },
  59 
  60 InjectedField JavaClasses::_injected_fields[] = {
  61   ALL_INJECTED_FIELDS(DECLARE_INJECTED_FIELD)
  62 };
  63 
  64 int JavaClasses::compute_injected_offset(InjectedFieldID id) {
  65   return _injected_fields[id].compute_offset();
  66 }
  67 
  68 
  69 InjectedField* JavaClasses::get_injected(Symbol* class_name, int* field_count) {
  70   *field_count = 0;
  71 
  72   vmSymbols::SID sid = vmSymbols::find_sid(class_name);


src/share/vm/classfile/javaClasses.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File