comparison src/share/vm/runtime/vmStructs.cpp @ 3908:7588156f5cf9

7051798: SA-JDI: NPE in Frame.addressOfStackSlot(Frame.java:244) Reviewed-by: kvn
author never
date Mon, 05 Sep 2011 17:09:05 -0700
parents d17bd0b18663
children e6b1331a51d2
comparison
equal deleted inserted replaced
3907:7b5c767f229c 3908:7588156f5cf9
650 static_field(SystemDictionary, WK_KLASS(Finalizer_klass), klassOop) \ 650 static_field(SystemDictionary, WK_KLASS(Finalizer_klass), klassOop) \
651 static_field(SystemDictionary, WK_KLASS(Thread_klass), klassOop) \ 651 static_field(SystemDictionary, WK_KLASS(Thread_klass), klassOop) \
652 static_field(SystemDictionary, WK_KLASS(ThreadGroup_klass), klassOop) \ 652 static_field(SystemDictionary, WK_KLASS(ThreadGroup_klass), klassOop) \
653 static_field(SystemDictionary, WK_KLASS(Properties_klass), klassOop) \ 653 static_field(SystemDictionary, WK_KLASS(Properties_klass), klassOop) \
654 static_field(SystemDictionary, WK_KLASS(StringBuffer_klass), klassOop) \ 654 static_field(SystemDictionary, WK_KLASS(StringBuffer_klass), klassOop) \
655 static_field(SystemDictionary, WK_KLASS(MethodHandle_klass), klassOop) \
655 static_field(SystemDictionary, _box_klasses[0], klassOop) \ 656 static_field(SystemDictionary, _box_klasses[0], klassOop) \
656 static_field(SystemDictionary, _java_system_loader, oop) \ 657 static_field(SystemDictionary, _java_system_loader, oop) \
657 \ 658 \
658 /*******************/ \ 659 /*******************/ \
659 /* HashtableBucket */ \ 660 /* HashtableBucket */ \
755 /***************************************/ \ 756 /***************************************/ \
756 \ 757 \
757 nonstatic_field(PcDesc, _pc_offset, int) \ 758 nonstatic_field(PcDesc, _pc_offset, int) \
758 nonstatic_field(PcDesc, _scope_decode_offset, int) \ 759 nonstatic_field(PcDesc, _scope_decode_offset, int) \
759 nonstatic_field(PcDesc, _obj_decode_offset, int) \ 760 nonstatic_field(PcDesc, _obj_decode_offset, int) \
760 nonstatic_field(PcDesc, _flags, PcDesc::PcDescFlags) \ 761 nonstatic_field(PcDesc, _flags, int) \
761 \ 762 \
762 /***************************************************/ \ 763 /***************************************************/ \
763 /* CodeBlobs (NOTE: incomplete, but only a little) */ \ 764 /* CodeBlobs (NOTE: incomplete, but only a little) */ \
764 /***************************************************/ \ 765 /***************************************************/ \
766 \
767 X86_ONLY(nonstatic_field(MethodHandles::RicochetFrame, _sender_pc, address)) \
768 X86_ONLY(nonstatic_field(MethodHandles::RicochetFrame, _exact_sender_sp, intptr_t*)) \
769 X86_ONLY(nonstatic_field(MethodHandles::RicochetFrame, _sender_link, intptr_t*)) \
770 X86_ONLY(nonstatic_field(MethodHandles::RicochetFrame, _saved_args_base, intptr_t*)) \
771 \
772 static_field(SharedRuntime, _ricochet_blob, RicochetBlob*) \
765 \ 773 \
766 nonstatic_field(CodeBlob, _name, const char*) \ 774 nonstatic_field(CodeBlob, _name, const char*) \
767 nonstatic_field(CodeBlob, _size, int) \ 775 nonstatic_field(CodeBlob, _size, int) \
768 nonstatic_field(CodeBlob, _header_size, int) \ 776 nonstatic_field(CodeBlob, _header_size, int) \
769 nonstatic_field(CodeBlob, _relocation_size, int) \ 777 nonstatic_field(CodeBlob, _relocation_size, int) \
772 nonstatic_field(CodeBlob, _frame_complete_offset, int) \ 780 nonstatic_field(CodeBlob, _frame_complete_offset, int) \
773 nonstatic_field(CodeBlob, _data_offset, int) \ 781 nonstatic_field(CodeBlob, _data_offset, int) \
774 nonstatic_field(CodeBlob, _frame_size, int) \ 782 nonstatic_field(CodeBlob, _frame_size, int) \
775 nonstatic_field(CodeBlob, _oop_maps, OopMapSet*) \ 783 nonstatic_field(CodeBlob, _oop_maps, OopMapSet*) \
776 \ 784 \
785 nonstatic_field(RuntimeStub, _caller_must_gc_arguments, bool) \
786 \
777 /**************************************************/ \ 787 /**************************************************/ \
778 /* NMethods (NOTE: incomplete, but only a little) */ \ 788 /* NMethods (NOTE: incomplete, but only a little) */ \
779 /**************************************************/ \ 789 /**************************************************/ \
780 \ 790 \
781 nonstatic_field(nmethod, _method, methodOop) \ 791 nonstatic_field(nmethod, _method, methodOop) \
784 nonstatic_field(nmethod, _scavenge_root_link, nmethod*) \ 794 nonstatic_field(nmethod, _scavenge_root_link, nmethod*) \
785 nonstatic_field(nmethod, _scavenge_root_state, jbyte) \ 795 nonstatic_field(nmethod, _scavenge_root_state, jbyte) \
786 nonstatic_field(nmethod, _state, unsigned char) \ 796 nonstatic_field(nmethod, _state, unsigned char) \
787 nonstatic_field(nmethod, _exception_offset, int) \ 797 nonstatic_field(nmethod, _exception_offset, int) \
788 nonstatic_field(nmethod, _deoptimize_offset, int) \ 798 nonstatic_field(nmethod, _deoptimize_offset, int) \
799 nonstatic_field(nmethod, _deoptimize_mh_offset, int) \
789 nonstatic_field(nmethod, _orig_pc_offset, int) \ 800 nonstatic_field(nmethod, _orig_pc_offset, int) \
790 nonstatic_field(nmethod, _stub_offset, int) \ 801 nonstatic_field(nmethod, _stub_offset, int) \
791 nonstatic_field(nmethod, _consts_offset, int) \ 802 nonstatic_field(nmethod, _consts_offset, int) \
792 nonstatic_field(nmethod, _oops_offset, int) \ 803 nonstatic_field(nmethod, _oops_offset, int) \
793 nonstatic_field(nmethod, _scopes_data_offset, int) \ 804 nonstatic_field(nmethod, _scopes_data_offset, int) \
801 nonstatic_field(nmethod, _osr_entry_point, address) \ 812 nonstatic_field(nmethod, _osr_entry_point, address) \
802 nonstatic_field(nmethod, _lock_count, jint) \ 813 nonstatic_field(nmethod, _lock_count, jint) \
803 nonstatic_field(nmethod, _stack_traversal_mark, long) \ 814 nonstatic_field(nmethod, _stack_traversal_mark, long) \
804 nonstatic_field(nmethod, _compile_id, int) \ 815 nonstatic_field(nmethod, _compile_id, int) \
805 nonstatic_field(nmethod, _marked_for_deoptimization, bool) \ 816 nonstatic_field(nmethod, _marked_for_deoptimization, bool) \
817 \
818 nonstatic_field(RicochetBlob, _bounce_offset, int) \
819 nonstatic_field(RicochetBlob, _exception_offset, int) \
806 \ 820 \
807 /********************************/ \ 821 /********************************/ \
808 /* JavaCalls (NOTE: incomplete) */ \ 822 /* JavaCalls (NOTE: incomplete) */ \
809 /********************************/ \ 823 /********************************/ \
810 \ 824 \
1308 \ 1322 \
1309 /*************************************************************/ \ 1323 /*************************************************************/ \
1310 /* CodeBlob hierarchy (needed for run-time type information) */ \ 1324 /* CodeBlob hierarchy (needed for run-time type information) */ \
1311 /*************************************************************/ \ 1325 /*************************************************************/ \
1312 \ 1326 \
1327 declare_toplevel_type(SharedRuntime) \
1328 X86_ONLY(declare_toplevel_type(MethodHandles::RicochetFrame)) \
1329 \
1313 declare_toplevel_type(CodeBlob) \ 1330 declare_toplevel_type(CodeBlob) \
1314 declare_type(BufferBlob, CodeBlob) \ 1331 declare_type(BufferBlob, CodeBlob) \
1315 declare_type(AdapterBlob, BufferBlob) \ 1332 declare_type(AdapterBlob, BufferBlob) \
1316 declare_type(nmethod, CodeBlob) \ 1333 declare_type(MethodHandlesAdapterBlob, BufferBlob) \
1317 declare_type(RuntimeStub, CodeBlob) \ 1334 declare_type(nmethod, CodeBlob) \
1318 declare_type(SingletonBlob, CodeBlob) \ 1335 declare_type(RuntimeStub, CodeBlob) \
1319 declare_type(SafepointBlob, SingletonBlob) \ 1336 declare_type(SingletonBlob, CodeBlob) \
1320 declare_type(DeoptimizationBlob, SingletonBlob) \ 1337 declare_type(SafepointBlob, SingletonBlob) \
1321 declare_type(RicochetBlob, SingletonBlob) \ 1338 declare_type(DeoptimizationBlob, SingletonBlob) \
1322 declare_c2_type(ExceptionBlob, SingletonBlob) \ 1339 declare_type(RicochetBlob, SingletonBlob) \
1323 declare_c2_type(UncommonTrapBlob, CodeBlob) \ 1340 declare_c2_type(ExceptionBlob, SingletonBlob) \
1341 declare_c2_type(UncommonTrapBlob, CodeBlob) \
1324 \ 1342 \
1325 /***************************************/ \ 1343 /***************************************/ \
1326 /* PcDesc and other compiled code info */ \ 1344 /* PcDesc and other compiled code info */ \
1327 /***************************************/ \ 1345 /***************************************/ \
1328 \ 1346 \
1329 declare_toplevel_type(PcDesc) \ 1347 declare_toplevel_type(PcDesc) \
1330 declare_integer_type(PcDesc::PcDescFlags) \
1331 \ 1348 \
1332 /************************/ \ 1349 /************************/ \
1333 /* OopMap and OopMapSet */ \ 1350 /* OopMap and OopMapSet */ \
1334 /************************/ \ 1351 /************************/ \
1335 \ 1352 \
1793 /**********************/ \ 1810 /**********************/ \
1794 /* ObjectSynchronizer */ \ 1811 /* ObjectSynchronizer */ \
1795 /**********************/ \ 1812 /**********************/ \
1796 \ 1813 \
1797 declare_constant(ObjectSynchronizer::_BLOCKSIZE) \ 1814 declare_constant(ObjectSynchronizer::_BLOCKSIZE) \
1815 \
1816 /**********************/ \
1817 /* PcDesc */ \
1818 /**********************/ \
1819 \
1820 declare_constant(PcDesc::PCDESC_reexecute) \
1821 declare_constant(PcDesc::PCDESC_is_method_handle_invoke) \
1822 declare_constant(PcDesc::PCDESC_return_oop) \
1823 \
1824 /**********************/ \
1825 /* frame */ \
1826 /**********************/ \
1827 \
1828 X86_ONLY(declare_constant(frame::entry_frame_call_wrapper_offset)) \
1829 declare_constant(frame::pc_return_offset) \
1798 \ 1830 \
1799 /********************************/ \ 1831 /********************************/ \
1800 /* Calling convention constants */ \ 1832 /* Calling convention constants */ \
1801 /********************************/ \ 1833 /********************************/ \
1802 \ 1834 \