1626 unsigned int : 32; |
1626 unsigned int : 32; |
1627 unsigned int : 32; |
1627 unsigned int : 32; |
1628 } jvm_version_info; |
1628 } jvm_version_info; |
1629 |
1629 |
1630 #define JVM_VERSION_MAJOR(version) ((version & 0xFF000000) >> 24) |
1630 #define JVM_VERSION_MAJOR(version) ((version & 0xFF000000) >> 24) |
1631 #define JVM_VERSION_MINOR(version) ((version & 0x00FF0000) >> 16) |
1631 #define JVM_VERSION_MINOR(version) ((version & 0x00FFFF00) >> 8) |
1632 // Micro version is 0 in HotSpot Express VM (set in jvm.cpp). |
1632 // Micro version is 0 in HotSpot Express VM (set in jvm.cpp). |
1633 #define JVM_VERSION_MICRO(version) ((version & 0x0000FF00) >> 8) |
1633 #define JVM_VERSION_MICRO(version) 0 |
1634 /* Build number is available in all HotSpot Express VM builds. |
1634 /* Build number is available in all HotSpot Express VM builds. |
1635 * It is defined in make/hotspot_version file. |
1635 * It is defined in make/hotspot_version file. |
1636 */ |
1636 */ |
1637 #define JVM_VERSION_BUILD(version) ((version & 0x000000FF)) |
1637 #define JVM_VERSION_BUILD(version) ((version & 0x000000FF)) |
1638 |
1638 |
1641 |
1641 |
1642 typedef struct { |
1642 typedef struct { |
1643 // Naming convention of RE build version string: n.n.n[_uu[c]][-<identifier>]-bxx |
1643 // Naming convention of RE build version string: n.n.n[_uu[c]][-<identifier>]-bxx |
1644 unsigned int jdk_version; /* Consists of major, minor, micro (n.n.n) */ |
1644 unsigned int jdk_version; /* Consists of major, minor, micro (n.n.n) */ |
1645 /* and build number (xx) */ |
1645 /* and build number (xx) */ |
1646 unsigned int update_version : 8; /* Update release version (uu) */ |
1646 unsigned int update_version : 16; /* Update release version (uu) */ |
1647 unsigned int special_update_version : 8; /* Special update release version (c)*/ |
1647 unsigned int special_update_version : 8; /* Special update release version (c)*/ |
1648 unsigned int reserved1 : 16; |
1648 unsigned int reserved1 : 8; |
1649 unsigned int reserved2; |
1649 unsigned int reserved2; |
1650 |
1650 |
1651 /* The following bits represents new JDK supports that VM has dependency on. |
1651 /* The following bits represents new JDK supports that VM has dependency on. |
1652 * VM implementation can use these bits to determine which JDK version |
1652 * VM implementation can use these bits to determine which JDK version |
1653 * and support it has to maintain runtime compatibility. |
1653 * and support it has to maintain runtime compatibility. |