make/altsrc.make

Tue, 21 Aug 2012 14:10:39 -0700

author
johnc
date
Tue, 21 Aug 2012 14:10:39 -0700
changeset 3998
7383557659bd
parent 2863
ededdaaf8ca5
child 6876
710a3c8b516e
permissions
-rw-r--r--

7185699: G1: Prediction model discrepancies
Summary: Correct the result value of G1CollectedHeap::pending_card_num(). Change the code that calculates the GC efficiency of a non-young heap region to use historical data from mixed GCs and the actual number of live bytes when predicting how long it would take to collect the region. Changes were also reviewed by Thomas Schatzl.
Reviewed-by: azeemj, brutisso

bobv@2508 1 #
bobv@2508 2 # Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
bobv@2508 3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
bobv@2508 4 #
bobv@2508 5 # This code is free software; you can redistribute it and/or modify it
bobv@2508 6 # under the terms of the GNU General Public License version 2 only, as
bobv@2508 7 # published by the Free Software Foundation.
bobv@2508 8 #
bobv@2508 9 # This code is distributed in the hope that it will be useful, but WITHOUT
bobv@2508 10 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
bobv@2508 11 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
bobv@2508 12 # version 2 for more details (a copy is included in the LICENSE file that
bobv@2508 13 # accompanied this code).
bobv@2508 14 #
bobv@2508 15 # You should have received a copy of the GNU General Public License version
bobv@2508 16 # 2 along with this work; if not, write to the Free Software Foundation,
bobv@2508 17 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
bobv@2508 18 #
bobv@2508 19 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
bobv@2508 20 # or visit www.oracle.com if you need additional information or have any
bobv@2508 21 # questions.
bobv@2508 22 #
bobv@2508 23 #
bobv@2508 24
kamg@2515 25 # This file defines variables and macros which are used in the makefiles to
kamg@2515 26 # allow distributions to augment or replace common hotspot code with
dholmes@2863 27 # distribution-specific source files. This capability is disabled when
dholmes@2863 28 # an OPENJDK build is requested, unless HS_ALT_SRC_REL has been set externally.
bobv@2508 29
kamg@2515 30 # Requires: GAMMADIR
kamg@2515 31 # Provides:
kamg@2515 32 # variables: HS_COMMON_SRC, HS_ALT_SRC, HS_COMMON_SRC_REL, and HS_ALT_SRC_REL
kamg@2515 33 # functions: altsrc-equiv, if-has-altsrc, altsrc, altsrc-replace
bobv@2508 34
kamg@2515 35 HS_COMMON_SRC_REL=src
bobv@2508 36
dholmes@2863 37 ifneq ($(OPENJDK),true)
dholmes@2863 38 # This needs to be changed to a more generic location, but we keep it
dholmes@2863 39 # as this for now for compatibility
dholmes@2863 40 HS_ALT_SRC_REL=src/closed
dholmes@2863 41 else
dholmes@2863 42 HS_ALT_SRC_REL=NO_SUCH_PATH
dholmes@2863 43 endif
bobv@2508 44
kamg@2515 45 HS_COMMON_SRC=$(GAMMADIR)/$(HS_COMMON_SRC_REL)
kamg@2515 46 HS_ALT_SRC=$(GAMMADIR)/$(HS_ALT_SRC_REL)
bobv@2508 47
kamg@2515 48 ## altsrc-equiv
kamg@2515 49 #
kamg@2515 50 # Convert a common source path to an alternative source path
kamg@2515 51 #
kamg@2515 52 # Parameter: An absolute path into the common sources
kamg@2515 53 # Result: The matching path to the alternate-source location
kamg@2515 54 #
kamg@2515 55 altsrc-equiv=$(subst $(HS_COMMON_SRC)/,$(HS_ALT_SRC)/,$(1))
bobv@2508 56
kamg@2515 57
kamg@2515 58 ## if-has-altsrc
kamg@2515 59 #
kamg@2515 60 # Conditional macro to test for the existence of an alternate source path
kamg@2515 61 #
kamg@2515 62 # Parameter: An absolute path into the common sources
kamg@2515 63 # Parameter: Result if the alternative-source location exists
kamg@2515 64 # Parameter: Result if the alternative-source location does not exist
kamg@2515 65 # Result: expands to parameter 2 or 3 depending on existence of alternate source
kamg@2515 66 #
kamg@2515 67 if-has-altsrc=$(if $(wildcard $(call altsrc-equiv,$(1))),$(2),$(3))
kamg@2515 68
kamg@2515 69
kamg@2515 70 ## altsrc
kamg@2515 71 #
kamg@2515 72 # Converts common source path to alternate source path if the alternate
kamg@2515 73 # path exists, otherwise evaluates to nul (empty string)
kamg@2515 74 #
kamg@2515 75 # Parameter: An absolute path into the common sources
kamg@2515 76 # Result: The equivalent path to the alternate-source location, if such a
kamg@2515 77 # location exists on the filesystem. Otherwise it expands to empty.
kamg@2515 78 #
kamg@2515 79 altsrc=$(call if-has-altsrc,$(1),$(call altsrc-equiv,$(1)))
kamg@2515 80
kamg@2515 81 ## commonsrc
kamg@2515 82 #
kamg@2515 83 # Returns parameter.
kamg@2515 84 #
kamg@2515 85 commonsrc=$(1)
kamg@2515 86
kamg@2515 87
kamg@2515 88 ## altsrc-replace
kamg@2515 89 #
kamg@2515 90 # Converts a common source path to an alternate source path if the alternate
kamg@2515 91 # source path exists. Otherwise it evaluates to the input common source path.
kamg@2515 92 #
kamg@2515 93 # Parameter: An absolute path into the common sources
kamg@2515 94 # Result: A path to either the common or alternate sources
kamg@2515 95 #
kamg@2515 96 altsrc-replace=$(call if-has-altsrc,$(1),$(call altsrc-equiv,$(1)),$(1))

mercurial