Mercurial > hg > graal-compiler
comparison src/share/vm/runtime/arguments.cpp @ 1626:1a11430e0326
6888573: class data sharing does not always disable large pages
Reviewed-by: phh
author | jcoomes |
---|---|
date | Thu, 24 Jun 2010 15:38:42 -0700 |
parents | e9ff18c4ace7 |
children | c5f1ea9e15e8 |
comparison
equal
deleted
inserted
replaced
1625:3e351982aac7 | 1626:1a11430e0326 |
---|---|
1695 FLAG_SET_DEFAULT(UseGCOverheadLimit, false); | 1695 FLAG_SET_DEFAULT(UseGCOverheadLimit, false); |
1696 } | 1696 } |
1697 | 1697 |
1698 status = status && verify_percentage(GCHeapFreeLimit, "GCHeapFreeLimit"); | 1698 status = status && verify_percentage(GCHeapFreeLimit, "GCHeapFreeLimit"); |
1699 | 1699 |
1700 // Check user specified sharing option conflict with Parallel GC | 1700 // Check whether user-specified sharing option conflicts with GC or page size. |
1701 bool cannot_share = ((UseConcMarkSweepGC || CMSIncrementalMode) || UseG1GC || UseParNewGC || | 1701 // Both sharing and large pages are enabled by default on some platforms; |
1702 UseParallelGC || UseParallelOldGC || | 1702 // large pages override sharing only if explicitly set on the command line. |
1703 SOLARIS_ONLY(UseISM) NOT_SOLARIS(UseLargePages)); | 1703 const bool cannot_share = UseConcMarkSweepGC || CMSIncrementalMode || |
1704 | 1704 UseG1GC || UseParNewGC || UseParallelGC || UseParallelOldGC || |
1705 UseLargePages && FLAG_IS_CMDLINE(UseLargePages); | |
1705 if (cannot_share) { | 1706 if (cannot_share) { |
1706 // Either force sharing on by forcing the other options off, or | 1707 // Either force sharing on by forcing the other options off, or |
1707 // force sharing off. | 1708 // force sharing off. |
1708 if (DumpSharedSpaces || ForceSharedSpaces) { | 1709 if (DumpSharedSpaces || ForceSharedSpaces) { |
1709 jio_fprintf(defaultStream::error_stream(), | 1710 jio_fprintf(defaultStream::error_stream(), |
1710 "Reverting to Serial GC because of %s\n", | 1711 "Using Serial GC and default page size because of %s\n", |
1711 ForceSharedSpaces ? " -Xshare:on" : "-Xshare:dump"); | 1712 ForceSharedSpaces ? "-Xshare:on" : "-Xshare:dump"); |
1712 force_serial_gc(); | 1713 force_serial_gc(); |
1713 FLAG_SET_DEFAULT(SOLARIS_ONLY(UseISM) NOT_SOLARIS(UseLargePages), false); | 1714 FLAG_SET_DEFAULT(UseLargePages, false); |
1714 } else { | 1715 } else { |
1715 if (UseSharedSpaces && Verbose) { | 1716 if (UseSharedSpaces && Verbose) { |
1716 jio_fprintf(defaultStream::error_stream(), | 1717 jio_fprintf(defaultStream::error_stream(), |
1717 "Turning off use of shared archive because of " | 1718 "Turning off use of shared archive because of " |
1718 "choice of garbage collector or large pages\n"); | 1719 "choice of garbage collector or large pages\n"); |
1719 } | 1720 } |
1720 no_shared_spaces(); | 1721 no_shared_spaces(); |
1721 } | 1722 } |
1723 } else if (UseLargePages && (UseSharedSpaces || DumpSharedSpaces)) { | |
1724 FLAG_SET_DEFAULT(UseLargePages, false); | |
1722 } | 1725 } |
1723 | 1726 |
1724 status = status && check_gc_consistency(); | 1727 status = status && check_gc_consistency(); |
1725 | 1728 |
1726 if (_has_alloc_profile) { | 1729 if (_has_alloc_profile) { |