Mercurial > hg > truffle
comparison src/share/vm/runtime/vmStructs.cpp @ 8002:8391fdd36e1f
Merge
author | dlong |
---|---|
date | Sun, 27 Jan 2013 01:07:09 -0800 |
parents | 557bda927cc2 db9981fd3124 |
children | 3c9bc17b9403 |
comparison
equal
deleted
inserted
replaced
7946:6fbe8a57549d | 8002:8391fdd36e1f |
---|---|
99 #include "runtime/virtualspace.hpp" | 99 #include "runtime/virtualspace.hpp" |
100 #include "runtime/vmStructs.hpp" | 100 #include "runtime/vmStructs.hpp" |
101 #include "utilities/array.hpp" | 101 #include "utilities/array.hpp" |
102 #include "utilities/globalDefinitions.hpp" | 102 #include "utilities/globalDefinitions.hpp" |
103 #include "utilities/hashtable.hpp" | 103 #include "utilities/hashtable.hpp" |
104 #include "utilities/macros.hpp" | |
104 #ifdef TARGET_ARCH_x86 | 105 #ifdef TARGET_ARCH_x86 |
105 # include "vmStructs_x86.hpp" | 106 # include "vmStructs_x86.hpp" |
106 #endif | 107 #endif |
107 #ifdef TARGET_ARCH_sparc | 108 #ifdef TARGET_ARCH_sparc |
108 # include "vmStructs_sparc.hpp" | 109 # include "vmStructs_sparc.hpp" |
144 # include "vmStructs_bsd_x86.hpp" | 145 # include "vmStructs_bsd_x86.hpp" |
145 #endif | 146 #endif |
146 #ifdef TARGET_OS_ARCH_bsd_zero | 147 #ifdef TARGET_OS_ARCH_bsd_zero |
147 # include "vmStructs_bsd_zero.hpp" | 148 # include "vmStructs_bsd_zero.hpp" |
148 #endif | 149 #endif |
149 #ifndef SERIALGC | 150 #if INCLUDE_ALL_GCS |
150 #include "gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.hpp" | 151 #include "gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.hpp" |
151 #include "gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.hpp" | 152 #include "gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.hpp" |
152 #include "gc_implementation/concurrentMarkSweep/concurrentMarkSweepThread.hpp" | 153 #include "gc_implementation/concurrentMarkSweep/concurrentMarkSweepThread.hpp" |
153 #include "gc_implementation/concurrentMarkSweep/vmStructs_cms.hpp" | 154 #include "gc_implementation/concurrentMarkSweep/vmStructs_cms.hpp" |
154 #include "gc_implementation/parNew/parNewGeneration.hpp" | 155 #include "gc_implementation/parNew/parNewGeneration.hpp" |
159 #include "gc_implementation/parallelScavenge/psOldGen.hpp" | 160 #include "gc_implementation/parallelScavenge/psOldGen.hpp" |
160 #include "gc_implementation/parallelScavenge/psVirtualspace.hpp" | 161 #include "gc_implementation/parallelScavenge/psVirtualspace.hpp" |
161 #include "gc_implementation/parallelScavenge/psYoungGen.hpp" | 162 #include "gc_implementation/parallelScavenge/psYoungGen.hpp" |
162 #include "gc_implementation/parallelScavenge/vmStructs_parallelgc.hpp" | 163 #include "gc_implementation/parallelScavenge/vmStructs_parallelgc.hpp" |
163 #include "gc_implementation/g1/vmStructs_g1.hpp" | 164 #include "gc_implementation/g1/vmStructs_g1.hpp" |
164 #endif | 165 #endif // INCLUDE_ALL_GCS |
165 #ifdef COMPILER2 | 166 #ifdef COMPILER2 |
166 #include "opto/addnode.hpp" | 167 #include "opto/addnode.hpp" |
167 #include "opto/block.hpp" | 168 #include "opto/block.hpp" |
168 #include "opto/callnode.hpp" | 169 #include "opto/callnode.hpp" |
169 #include "opto/cfgnode.hpp" | 170 #include "opto/cfgnode.hpp" |
2784 GENERATE_C1_NONSTATIC_VM_STRUCT_ENTRY, | 2785 GENERATE_C1_NONSTATIC_VM_STRUCT_ENTRY, |
2785 GENERATE_C2_NONSTATIC_VM_STRUCT_ENTRY, | 2786 GENERATE_C2_NONSTATIC_VM_STRUCT_ENTRY, |
2786 GENERATE_C1_UNCHECKED_STATIC_VM_STRUCT_ENTRY, | 2787 GENERATE_C1_UNCHECKED_STATIC_VM_STRUCT_ENTRY, |
2787 GENERATE_C2_UNCHECKED_STATIC_VM_STRUCT_ENTRY) | 2788 GENERATE_C2_UNCHECKED_STATIC_VM_STRUCT_ENTRY) |
2788 | 2789 |
2789 #ifndef SERIALGC | 2790 #if INCLUDE_ALL_GCS |
2790 VM_STRUCTS_PARALLELGC(GENERATE_NONSTATIC_VM_STRUCT_ENTRY, | 2791 VM_STRUCTS_PARALLELGC(GENERATE_NONSTATIC_VM_STRUCT_ENTRY, |
2791 GENERATE_STATIC_VM_STRUCT_ENTRY) | 2792 GENERATE_STATIC_VM_STRUCT_ENTRY) |
2792 | 2793 |
2793 VM_STRUCTS_CMS(GENERATE_NONSTATIC_VM_STRUCT_ENTRY, | 2794 VM_STRUCTS_CMS(GENERATE_NONSTATIC_VM_STRUCT_ENTRY, |
2794 GENERATE_NONSTATIC_VM_STRUCT_ENTRY, | 2795 GENERATE_NONSTATIC_VM_STRUCT_ENTRY, |
2795 GENERATE_STATIC_VM_STRUCT_ENTRY) | 2796 GENERATE_STATIC_VM_STRUCT_ENTRY) |
2796 | 2797 |
2797 VM_STRUCTS_G1(GENERATE_NONSTATIC_VM_STRUCT_ENTRY, | 2798 VM_STRUCTS_G1(GENERATE_NONSTATIC_VM_STRUCT_ENTRY, |
2798 GENERATE_STATIC_VM_STRUCT_ENTRY) | 2799 GENERATE_STATIC_VM_STRUCT_ENTRY) |
2799 #endif // SERIALGC | 2800 #endif // INCLUDE_ALL_GCS |
2800 | 2801 |
2801 VM_STRUCTS_CPU(GENERATE_NONSTATIC_VM_STRUCT_ENTRY, | 2802 VM_STRUCTS_CPU(GENERATE_NONSTATIC_VM_STRUCT_ENTRY, |
2802 GENERATE_STATIC_VM_STRUCT_ENTRY, | 2803 GENERATE_STATIC_VM_STRUCT_ENTRY, |
2803 GENERATE_UNCHECKED_NONSTATIC_VM_STRUCT_ENTRY, | 2804 GENERATE_UNCHECKED_NONSTATIC_VM_STRUCT_ENTRY, |
2804 GENERATE_NONSTATIC_VM_STRUCT_ENTRY, | 2805 GENERATE_NONSTATIC_VM_STRUCT_ENTRY, |
2828 GENERATE_UNSIGNED_INTEGER_VM_TYPE_ENTRY, | 2829 GENERATE_UNSIGNED_INTEGER_VM_TYPE_ENTRY, |
2829 GENERATE_C1_TOPLEVEL_VM_TYPE_ENTRY, | 2830 GENERATE_C1_TOPLEVEL_VM_TYPE_ENTRY, |
2830 GENERATE_C2_VM_TYPE_ENTRY, | 2831 GENERATE_C2_VM_TYPE_ENTRY, |
2831 GENERATE_C2_TOPLEVEL_VM_TYPE_ENTRY) | 2832 GENERATE_C2_TOPLEVEL_VM_TYPE_ENTRY) |
2832 | 2833 |
2833 #ifndef SERIALGC | 2834 #if INCLUDE_ALL_GCS |
2834 VM_TYPES_PARALLELGC(GENERATE_VM_TYPE_ENTRY, | 2835 VM_TYPES_PARALLELGC(GENERATE_VM_TYPE_ENTRY, |
2835 GENERATE_TOPLEVEL_VM_TYPE_ENTRY) | 2836 GENERATE_TOPLEVEL_VM_TYPE_ENTRY) |
2836 | 2837 |
2837 VM_TYPES_CMS(GENERATE_VM_TYPE_ENTRY, | 2838 VM_TYPES_CMS(GENERATE_VM_TYPE_ENTRY, |
2838 GENERATE_TOPLEVEL_VM_TYPE_ENTRY) | 2839 GENERATE_TOPLEVEL_VM_TYPE_ENTRY) |
2839 | 2840 |
2840 VM_TYPES_PARNEW(GENERATE_VM_TYPE_ENTRY) | 2841 VM_TYPES_PARNEW(GENERATE_VM_TYPE_ENTRY) |
2841 | 2842 |
2842 VM_TYPES_G1(GENERATE_VM_TYPE_ENTRY, | 2843 VM_TYPES_G1(GENERATE_VM_TYPE_ENTRY, |
2843 GENERATE_TOPLEVEL_VM_TYPE_ENTRY) | 2844 GENERATE_TOPLEVEL_VM_TYPE_ENTRY) |
2844 #endif // SERIALGC | 2845 #endif // INCLUDE_ALL_GCS |
2845 | 2846 |
2846 VM_TYPES_CPU(GENERATE_VM_TYPE_ENTRY, | 2847 VM_TYPES_CPU(GENERATE_VM_TYPE_ENTRY, |
2847 GENERATE_TOPLEVEL_VM_TYPE_ENTRY, | 2848 GENERATE_TOPLEVEL_VM_TYPE_ENTRY, |
2848 GENERATE_OOP_VM_TYPE_ENTRY, | 2849 GENERATE_OOP_VM_TYPE_ENTRY, |
2849 GENERATE_INTEGER_VM_TYPE_ENTRY, | 2850 GENERATE_INTEGER_VM_TYPE_ENTRY, |
2870 GENERATE_PREPROCESSOR_VM_INT_CONSTANT_ENTRY, | 2871 GENERATE_PREPROCESSOR_VM_INT_CONSTANT_ENTRY, |
2871 GENERATE_C1_VM_INT_CONSTANT_ENTRY, | 2872 GENERATE_C1_VM_INT_CONSTANT_ENTRY, |
2872 GENERATE_C2_VM_INT_CONSTANT_ENTRY, | 2873 GENERATE_C2_VM_INT_CONSTANT_ENTRY, |
2873 GENERATE_C2_PREPROCESSOR_VM_INT_CONSTANT_ENTRY) | 2874 GENERATE_C2_PREPROCESSOR_VM_INT_CONSTANT_ENTRY) |
2874 | 2875 |
2875 #ifndef SERIALGC | 2876 #if INCLUDE_ALL_GCS |
2876 VM_INT_CONSTANTS_CMS(GENERATE_VM_INT_CONSTANT_ENTRY) | 2877 VM_INT_CONSTANTS_CMS(GENERATE_VM_INT_CONSTANT_ENTRY) |
2877 | 2878 |
2878 VM_INT_CONSTANTS_PARNEW(GENERATE_VM_INT_CONSTANT_ENTRY) | 2879 VM_INT_CONSTANTS_PARNEW(GENERATE_VM_INT_CONSTANT_ENTRY) |
2879 #endif // SERIALGC | 2880 #endif // INCLUDE_ALL_GCS |
2880 | 2881 |
2881 VM_INT_CONSTANTS_CPU(GENERATE_VM_INT_CONSTANT_ENTRY, | 2882 VM_INT_CONSTANTS_CPU(GENERATE_VM_INT_CONSTANT_ENTRY, |
2882 GENERATE_PREPROCESSOR_VM_INT_CONSTANT_ENTRY, | 2883 GENERATE_PREPROCESSOR_VM_INT_CONSTANT_ENTRY, |
2883 GENERATE_C1_VM_INT_CONSTANT_ENTRY, | 2884 GENERATE_C1_VM_INT_CONSTANT_ENTRY, |
2884 GENERATE_C2_VM_INT_CONSTANT_ENTRY, | 2885 GENERATE_C2_VM_INT_CONSTANT_ENTRY, |
2928 CHECK_C1_NONSTATIC_VM_STRUCT_ENTRY, | 2929 CHECK_C1_NONSTATIC_VM_STRUCT_ENTRY, |
2929 CHECK_C2_NONSTATIC_VM_STRUCT_ENTRY, | 2930 CHECK_C2_NONSTATIC_VM_STRUCT_ENTRY, |
2930 CHECK_NO_OP, | 2931 CHECK_NO_OP, |
2931 CHECK_NO_OP); | 2932 CHECK_NO_OP); |
2932 | 2933 |
2933 #ifndef SERIALGC | 2934 #if INCLUDE_ALL_GCS |
2934 VM_STRUCTS_PARALLELGC(CHECK_NONSTATIC_VM_STRUCT_ENTRY, | 2935 VM_STRUCTS_PARALLELGC(CHECK_NONSTATIC_VM_STRUCT_ENTRY, |
2935 CHECK_STATIC_VM_STRUCT_ENTRY); | 2936 CHECK_STATIC_VM_STRUCT_ENTRY); |
2936 | 2937 |
2937 VM_STRUCTS_CMS(CHECK_NONSTATIC_VM_STRUCT_ENTRY, | 2938 VM_STRUCTS_CMS(CHECK_NONSTATIC_VM_STRUCT_ENTRY, |
2938 CHECK_VOLATILE_NONSTATIC_VM_STRUCT_ENTRY, | 2939 CHECK_VOLATILE_NONSTATIC_VM_STRUCT_ENTRY, |
2939 CHECK_STATIC_VM_STRUCT_ENTRY); | 2940 CHECK_STATIC_VM_STRUCT_ENTRY); |
2940 | 2941 |
2941 VM_STRUCTS_G1(CHECK_NONSTATIC_VM_STRUCT_ENTRY, | 2942 VM_STRUCTS_G1(CHECK_NONSTATIC_VM_STRUCT_ENTRY, |
2942 CHECK_STATIC_VM_STRUCT_ENTRY); | 2943 CHECK_STATIC_VM_STRUCT_ENTRY); |
2943 #endif // SERIALGC | 2944 #endif // INCLUDE_ALL_GCS |
2944 | 2945 |
2945 VM_STRUCTS_CPU(CHECK_NONSTATIC_VM_STRUCT_ENTRY, | 2946 VM_STRUCTS_CPU(CHECK_NONSTATIC_VM_STRUCT_ENTRY, |
2946 CHECK_STATIC_VM_STRUCT_ENTRY, | 2947 CHECK_STATIC_VM_STRUCT_ENTRY, |
2947 CHECK_NO_OP, | 2948 CHECK_NO_OP, |
2948 CHECK_VOLATILE_NONSTATIC_VM_STRUCT_ENTRY, | 2949 CHECK_VOLATILE_NONSTATIC_VM_STRUCT_ENTRY, |
2967 CHECK_SINGLE_ARG_VM_TYPE_NO_OP, | 2968 CHECK_SINGLE_ARG_VM_TYPE_NO_OP, |
2968 CHECK_C1_TOPLEVEL_VM_TYPE_ENTRY, | 2969 CHECK_C1_TOPLEVEL_VM_TYPE_ENTRY, |
2969 CHECK_C2_VM_TYPE_ENTRY, | 2970 CHECK_C2_VM_TYPE_ENTRY, |
2970 CHECK_C2_TOPLEVEL_VM_TYPE_ENTRY); | 2971 CHECK_C2_TOPLEVEL_VM_TYPE_ENTRY); |
2971 | 2972 |
2972 #ifndef SERIALGC | 2973 #if INCLUDE_ALL_GCS |
2973 VM_TYPES_PARALLELGC(CHECK_VM_TYPE_ENTRY, | 2974 VM_TYPES_PARALLELGC(CHECK_VM_TYPE_ENTRY, |
2974 CHECK_SINGLE_ARG_VM_TYPE_NO_OP); | 2975 CHECK_SINGLE_ARG_VM_TYPE_NO_OP); |
2975 | 2976 |
2976 VM_TYPES_CMS(CHECK_VM_TYPE_ENTRY, | 2977 VM_TYPES_CMS(CHECK_VM_TYPE_ENTRY, |
2977 CHECK_SINGLE_ARG_VM_TYPE_NO_OP); | 2978 CHECK_SINGLE_ARG_VM_TYPE_NO_OP); |
2978 | 2979 |
2979 VM_TYPES_PARNEW(CHECK_VM_TYPE_ENTRY) | 2980 VM_TYPES_PARNEW(CHECK_VM_TYPE_ENTRY) |
2980 | 2981 |
2981 VM_TYPES_G1(CHECK_VM_TYPE_ENTRY, | 2982 VM_TYPES_G1(CHECK_VM_TYPE_ENTRY, |
2982 CHECK_SINGLE_ARG_VM_TYPE_NO_OP); | 2983 CHECK_SINGLE_ARG_VM_TYPE_NO_OP); |
2983 #endif // SERIALGC | 2984 #endif // INCLUDE_ALL_GCS |
2984 | 2985 |
2985 VM_TYPES_CPU(CHECK_VM_TYPE_ENTRY, | 2986 VM_TYPES_CPU(CHECK_VM_TYPE_ENTRY, |
2986 CHECK_SINGLE_ARG_VM_TYPE_NO_OP, | 2987 CHECK_SINGLE_ARG_VM_TYPE_NO_OP, |
2987 CHECK_SINGLE_ARG_VM_TYPE_NO_OP, | 2988 CHECK_SINGLE_ARG_VM_TYPE_NO_OP, |
2988 CHECK_SINGLE_ARG_VM_TYPE_NO_OP, | 2989 CHECK_SINGLE_ARG_VM_TYPE_NO_OP, |
3033 ENSURE_NONPRODUCT_FIELD_TYPE_PRESENT, | 3034 ENSURE_NONPRODUCT_FIELD_TYPE_PRESENT, |
3034 ENSURE_C1_FIELD_TYPE_PRESENT, | 3035 ENSURE_C1_FIELD_TYPE_PRESENT, |
3035 ENSURE_C2_FIELD_TYPE_PRESENT, | 3036 ENSURE_C2_FIELD_TYPE_PRESENT, |
3036 CHECK_NO_OP, | 3037 CHECK_NO_OP, |
3037 CHECK_NO_OP)); | 3038 CHECK_NO_OP)); |
3038 #ifndef SERIALGC | 3039 #if INCLUDE_ALL_GCS |
3039 debug_only(VM_STRUCTS_PARALLELGC(ENSURE_FIELD_TYPE_PRESENT, | 3040 debug_only(VM_STRUCTS_PARALLELGC(ENSURE_FIELD_TYPE_PRESENT, |
3040 ENSURE_FIELD_TYPE_PRESENT)); | 3041 ENSURE_FIELD_TYPE_PRESENT)); |
3041 debug_only(VM_STRUCTS_CMS(ENSURE_FIELD_TYPE_PRESENT, | 3042 debug_only(VM_STRUCTS_CMS(ENSURE_FIELD_TYPE_PRESENT, |
3042 ENSURE_FIELD_TYPE_PRESENT, | 3043 ENSURE_FIELD_TYPE_PRESENT, |
3043 ENSURE_FIELD_TYPE_PRESENT)); | 3044 ENSURE_FIELD_TYPE_PRESENT)); |
3044 debug_only(VM_STRUCTS_G1(ENSURE_FIELD_TYPE_PRESENT, | 3045 debug_only(VM_STRUCTS_G1(ENSURE_FIELD_TYPE_PRESENT, |
3045 ENSURE_FIELD_TYPE_PRESENT)); | 3046 ENSURE_FIELD_TYPE_PRESENT)); |
3046 #endif // SERIALGC | 3047 #endif // INCLUDE_ALL_GCS |
3047 debug_only(VM_STRUCTS_CPU(ENSURE_FIELD_TYPE_PRESENT, | 3048 debug_only(VM_STRUCTS_CPU(ENSURE_FIELD_TYPE_PRESENT, |
3048 ENSURE_FIELD_TYPE_PRESENT, | 3049 ENSURE_FIELD_TYPE_PRESENT, |
3049 CHECK_NO_OP, | 3050 CHECK_NO_OP, |
3050 ENSURE_FIELD_TYPE_PRESENT, | 3051 ENSURE_FIELD_TYPE_PRESENT, |
3051 ENSURE_NONPRODUCT_FIELD_TYPE_PRESENT, | 3052 ENSURE_NONPRODUCT_FIELD_TYPE_PRESENT, |