< prev index next >

src/share/vm/runtime/vmStructs.cpp

Print this page
rev 8961 : [mq]: diff-shenandoah.patch


 191 #include "opto/castnode.hpp"
 192 #include "opto/cfgnode.hpp"
 193 #include "opto/chaitin.hpp"
 194 #include "opto/convertnode.hpp"
 195 #include "opto/divnode.hpp"
 196 #include "opto/intrinsicnode.hpp"
 197 #include "opto/locknode.hpp"
 198 #include "opto/loopnode.hpp"
 199 #include "opto/machnode.hpp"
 200 #include "opto/matcher.hpp"
 201 #include "opto/mathexactnode.hpp"
 202 #include "opto/movenode.hpp"
 203 #include "opto/mulnode.hpp"
 204 #include "opto/narrowptrnode.hpp"
 205 #include "opto/opaquenode.hpp"
 206 #include "opto/optoreg.hpp"
 207 #include "opto/parse.hpp"
 208 #include "opto/phaseX.hpp"
 209 #include "opto/regalloc.hpp"
 210 #include "opto/rootnode.hpp"

 211 #include "opto/subnode.hpp"
 212 #include "opto/vectornode.hpp"
 213 #endif // COMPILER2
 214 
 215 // Note: the cross-product of (c1, c2, product, nonproduct, ...),
 216 // (nonstatic, static), and (unchecked, checked) has not been taken.
 217 // Only the macros currently needed have been defined.
 218 
 219 // A field whose type is not checked is given a null string as the
 220 // type name, indicating an "opaque" type to the serviceability agent.
 221 
 222 // NOTE: there is an interdependency between this file and
 223 // HotSpotTypeDataBase.java, which parses the type strings.
 224 
 225 #ifndef REG_COUNT
 226   #define REG_COUNT 0
 227 #endif
 228 // whole purpose of this function is to work around bug c++/27724 in gcc 4.1.1
 229 // with optimization turned on it doesn't affect produced code
 230 static inline uint64_t cast_uint64_t(size_t x)


2059   declare_c2_type(Pack2LNode, PackNode)                                   \
2060   declare_c2_type(Pack2DNode, PackNode)                                   \
2061   declare_c2_type(ExtractNode, Node)                                      \
2062   declare_c2_type(ExtractBNode, ExtractNode)                              \
2063   declare_c2_type(ExtractUBNode, ExtractNode)                             \
2064   declare_c2_type(ExtractCNode, ExtractNode)                              \
2065   declare_c2_type(ExtractSNode, ExtractNode)                              \
2066   declare_c2_type(ExtractINode, ExtractNode)                              \
2067   declare_c2_type(ExtractLNode, ExtractNode)                              \
2068   declare_c2_type(ExtractFNode, ExtractNode)                              \
2069   declare_c2_type(ExtractDNode, ExtractNode)                              \
2070   declare_c2_type(OverflowNode, CmpNode)                                  \
2071   declare_c2_type(OverflowINode, OverflowNode)                            \
2072   declare_c2_type(OverflowAddINode, OverflowINode)                        \
2073   declare_c2_type(OverflowSubINode, OverflowINode)                        \
2074   declare_c2_type(OverflowMulINode, OverflowINode)                        \
2075   declare_c2_type(OverflowLNode, OverflowNode)                            \
2076   declare_c2_type(OverflowAddLNode, OverflowLNode)                        \
2077   declare_c2_type(OverflowSubLNode, OverflowLNode)                        \
2078   declare_c2_type(OverflowMulLNode, OverflowLNode)                        \



2079                                                                           \
2080   /*********************/                                                 \
2081   /* Adapter Blob Entries */                                              \
2082   /*********************/                                                 \
2083   declare_toplevel_type(AdapterHandlerEntry)                              \
2084   declare_toplevel_type(AdapterHandlerEntry*)                             \
2085                                                                           \
2086   /*********************/                                                 \
2087   /* CI */                                                                \
2088   /*********************/                                                 \
2089   declare_toplevel_type(ciEnv)                                            \
2090   declare_toplevel_type(ciObjectFactory)                                  \
2091   declare_toplevel_type(ciConstant)                                       \
2092   declare_toplevel_type(ciField)                                          \
2093   declare_toplevel_type(ciSymbol)                                         \
2094   declare_toplevel_type(ciBaseObject)                                     \
2095   declare_type(ciObject, ciBaseObject)                                    \
2096   declare_type(ciInstance, ciObject)                                      \
2097   declare_type(ciMetadata, ciBaseObject)                                  \
2098   declare_type(ciMethod, ciMetadata)                                      \


2240                                                                           \
2241   declare_constant(oopSize)                                               \
2242   declare_constant(LogBytesPerWord)                                       \
2243   declare_constant(BytesPerWord)                                          \
2244   declare_constant(BytesPerLong)                                          \
2245                                                                           \
2246   declare_constant(LogKlassAlignmentInBytes)                              \
2247                                                                           \
2248   /********************************************/                          \
2249   /* Generation and Space Hierarchy Constants */                          \
2250   /********************************************/                          \
2251                                                                           \
2252   declare_constant(ageTable::table_size)                                  \
2253                                                                           \
2254   declare_constant(BarrierSet::ModRef)                                    \
2255   declare_constant(BarrierSet::CardTableModRef)                           \
2256   declare_constant(BarrierSet::CardTableForRS)                            \
2257   declare_constant(BarrierSet::CardTableExtension)                        \
2258   declare_constant(BarrierSet::G1SATBCT)                                  \
2259   declare_constant(BarrierSet::G1SATBCTLogging)                           \

2260                                                                           \
2261   declare_constant(BlockOffsetSharedArray::LogN)                          \
2262   declare_constant(BlockOffsetSharedArray::LogN_words)                    \
2263   declare_constant(BlockOffsetSharedArray::N_bytes)                       \
2264   declare_constant(BlockOffsetSharedArray::N_words)                       \
2265                                                                           \
2266   declare_constant(BlockOffsetArray::N_words)                             \
2267                                                                           \
2268   declare_constant(CardTableModRefBS::clean_card)                         \
2269   declare_constant(CardTableModRefBS::last_card)                          \
2270   declare_constant(CardTableModRefBS::dirty_card)                         \
2271   declare_constant(CardTableModRefBS::Precise)                            \
2272   declare_constant(CardTableModRefBS::ObjHeadPreciseArray)                \
2273   declare_constant(CardTableModRefBS::card_shift)                         \
2274   declare_constant(CardTableModRefBS::card_size)                          \
2275   declare_constant(CardTableModRefBS::card_size_in_words)                 \
2276                                                                           \
2277   declare_constant(CardTableRS::youngergen_card)                          \
2278                                                                           \
2279   declare_constant(CollectedHeap::GenCollectedHeap)                       \




 191 #include "opto/castnode.hpp"
 192 #include "opto/cfgnode.hpp"
 193 #include "opto/chaitin.hpp"
 194 #include "opto/convertnode.hpp"
 195 #include "opto/divnode.hpp"
 196 #include "opto/intrinsicnode.hpp"
 197 #include "opto/locknode.hpp"
 198 #include "opto/loopnode.hpp"
 199 #include "opto/machnode.hpp"
 200 #include "opto/matcher.hpp"
 201 #include "opto/mathexactnode.hpp"
 202 #include "opto/movenode.hpp"
 203 #include "opto/mulnode.hpp"
 204 #include "opto/narrowptrnode.hpp"
 205 #include "opto/opaquenode.hpp"
 206 #include "opto/optoreg.hpp"
 207 #include "opto/parse.hpp"
 208 #include "opto/phaseX.hpp"
 209 #include "opto/regalloc.hpp"
 210 #include "opto/rootnode.hpp"
 211 #include "opto/shenandoahSupport.hpp"
 212 #include "opto/subnode.hpp"
 213 #include "opto/vectornode.hpp"
 214 #endif // COMPILER2
 215 
 216 // Note: the cross-product of (c1, c2, product, nonproduct, ...),
 217 // (nonstatic, static), and (unchecked, checked) has not been taken.
 218 // Only the macros currently needed have been defined.
 219 
 220 // A field whose type is not checked is given a null string as the
 221 // type name, indicating an "opaque" type to the serviceability agent.
 222 
 223 // NOTE: there is an interdependency between this file and
 224 // HotSpotTypeDataBase.java, which parses the type strings.
 225 
 226 #ifndef REG_COUNT
 227   #define REG_COUNT 0
 228 #endif
 229 // whole purpose of this function is to work around bug c++/27724 in gcc 4.1.1
 230 // with optimization turned on it doesn't affect produced code
 231 static inline uint64_t cast_uint64_t(size_t x)


2060   declare_c2_type(Pack2LNode, PackNode)                                   \
2061   declare_c2_type(Pack2DNode, PackNode)                                   \
2062   declare_c2_type(ExtractNode, Node)                                      \
2063   declare_c2_type(ExtractBNode, ExtractNode)                              \
2064   declare_c2_type(ExtractUBNode, ExtractNode)                             \
2065   declare_c2_type(ExtractCNode, ExtractNode)                              \
2066   declare_c2_type(ExtractSNode, ExtractNode)                              \
2067   declare_c2_type(ExtractINode, ExtractNode)                              \
2068   declare_c2_type(ExtractLNode, ExtractNode)                              \
2069   declare_c2_type(ExtractFNode, ExtractNode)                              \
2070   declare_c2_type(ExtractDNode, ExtractNode)                              \
2071   declare_c2_type(OverflowNode, CmpNode)                                  \
2072   declare_c2_type(OverflowINode, OverflowNode)                            \
2073   declare_c2_type(OverflowAddINode, OverflowINode)                        \
2074   declare_c2_type(OverflowSubINode, OverflowINode)                        \
2075   declare_c2_type(OverflowMulINode, OverflowINode)                        \
2076   declare_c2_type(OverflowLNode, OverflowNode)                            \
2077   declare_c2_type(OverflowAddLNode, OverflowLNode)                        \
2078   declare_c2_type(OverflowSubLNode, OverflowLNode)                        \
2079   declare_c2_type(OverflowMulLNode, OverflowLNode)                        \
2080   declare_c2_type(ShenandoahBarrierNode, TypeNode)                        \
2081   declare_c2_type(ShenandoahReadBarrierNode, ShenandoahBarrierNode)       \
2082   declare_c2_type(ShenandoahWriteBarrierNode, ShenandoahBarrierNode)      \
2083                                                                           \
2084   /*********************/                                                 \
2085   /* Adapter Blob Entries */                                              \
2086   /*********************/                                                 \
2087   declare_toplevel_type(AdapterHandlerEntry)                              \
2088   declare_toplevel_type(AdapterHandlerEntry*)                             \
2089                                                                           \
2090   /*********************/                                                 \
2091   /* CI */                                                                \
2092   /*********************/                                                 \
2093   declare_toplevel_type(ciEnv)                                            \
2094   declare_toplevel_type(ciObjectFactory)                                  \
2095   declare_toplevel_type(ciConstant)                                       \
2096   declare_toplevel_type(ciField)                                          \
2097   declare_toplevel_type(ciSymbol)                                         \
2098   declare_toplevel_type(ciBaseObject)                                     \
2099   declare_type(ciObject, ciBaseObject)                                    \
2100   declare_type(ciInstance, ciObject)                                      \
2101   declare_type(ciMetadata, ciBaseObject)                                  \
2102   declare_type(ciMethod, ciMetadata)                                      \


2244                                                                           \
2245   declare_constant(oopSize)                                               \
2246   declare_constant(LogBytesPerWord)                                       \
2247   declare_constant(BytesPerWord)                                          \
2248   declare_constant(BytesPerLong)                                          \
2249                                                                           \
2250   declare_constant(LogKlassAlignmentInBytes)                              \
2251                                                                           \
2252   /********************************************/                          \
2253   /* Generation and Space Hierarchy Constants */                          \
2254   /********************************************/                          \
2255                                                                           \
2256   declare_constant(ageTable::table_size)                                  \
2257                                                                           \
2258   declare_constant(BarrierSet::ModRef)                                    \
2259   declare_constant(BarrierSet::CardTableModRef)                           \
2260   declare_constant(BarrierSet::CardTableForRS)                            \
2261   declare_constant(BarrierSet::CardTableExtension)                        \
2262   declare_constant(BarrierSet::G1SATBCT)                                  \
2263   declare_constant(BarrierSet::G1SATBCTLogging)                           \
2264   declare_constant(BarrierSet::ShenandoahBarrierSet)                      \
2265                                                                           \
2266   declare_constant(BlockOffsetSharedArray::LogN)                          \
2267   declare_constant(BlockOffsetSharedArray::LogN_words)                    \
2268   declare_constant(BlockOffsetSharedArray::N_bytes)                       \
2269   declare_constant(BlockOffsetSharedArray::N_words)                       \
2270                                                                           \
2271   declare_constant(BlockOffsetArray::N_words)                             \
2272                                                                           \
2273   declare_constant(CardTableModRefBS::clean_card)                         \
2274   declare_constant(CardTableModRefBS::last_card)                          \
2275   declare_constant(CardTableModRefBS::dirty_card)                         \
2276   declare_constant(CardTableModRefBS::Precise)                            \
2277   declare_constant(CardTableModRefBS::ObjHeadPreciseArray)                \
2278   declare_constant(CardTableModRefBS::card_shift)                         \
2279   declare_constant(CardTableModRefBS::card_size)                          \
2280   declare_constant(CardTableModRefBS::card_size_in_words)                 \
2281                                                                           \
2282   declare_constant(CardTableRS::youngergen_card)                          \
2283                                                                           \
2284   declare_constant(CollectedHeap::GenCollectedHeap)                       \


< prev index next >