make/langtools-rules.gmk
author ysr
Mon, 16 Aug 2010 15:58:42 -0700
changeset 6258 68f252c6e825
parent 5499 eb0b3e373167
child 8441 30f5ad688d4a
permissions -rw-r--r--
6948538: CMS: BOT walkers can fall into object allocation and initialization cracks Summary: GC workers now recognize an intermediate transient state of blocks which are allocated but have not yet completed initialization. blk_start() calls do not attempt to determine the size of a block in the transient state, rather waiting for the block to become initialized so that it is safe to query its size. Audited and ensured the order of initialization of object fields (klass, free bit and size) to respect block state transition protocol. Also included some new assertion checking code enabled in debug mode. Reviewed-by: chrisphi, johnc, poonam
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
fd16c54261b3 Initial load
duke
parents:
diff changeset
     1
#
5499
eb0b3e373167 6943119: Rebrand source copyright notices
ohair
parents: 3792
diff changeset
     2
# Copyright (c) 2001, 2009, Oracle and/or its affiliates. All rights reserved.
0
fd16c54261b3 Initial load
duke
parents:
diff changeset
     3
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
fd16c54261b3 Initial load
duke
parents:
diff changeset
     4
#
fd16c54261b3 Initial load
duke
parents:
diff changeset
     5
# This code is free software; you can redistribute it and/or modify it
fd16c54261b3 Initial load
duke
parents:
diff changeset
     6
# under the terms of the GNU General Public License version 2 only, as
5499
eb0b3e373167 6943119: Rebrand source copyright notices
ohair
parents: 3792
diff changeset
     7
# published by the Free Software Foundation.  Oracle designates this
0
fd16c54261b3 Initial load
duke
parents:
diff changeset
     8
# particular file as subject to the "Classpath" exception as provided
5499
eb0b3e373167 6943119: Rebrand source copyright notices
ohair
parents: 3792
diff changeset
     9
# by Oracle in the LICENSE file that accompanied this code.
0
fd16c54261b3 Initial load
duke
parents:
diff changeset
    10
#
fd16c54261b3 Initial load
duke
parents:
diff changeset
    11
# This code is distributed in the hope that it will be useful, but WITHOUT
fd16c54261b3 Initial load
duke
parents:
diff changeset
    12
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
fd16c54261b3 Initial load
duke
parents:
diff changeset
    13
# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
fd16c54261b3 Initial load
duke
parents:
diff changeset
    14
# version 2 for more details (a copy is included in the LICENSE file that
fd16c54261b3 Initial load
duke
parents:
diff changeset
    15
# accompanied this code).
fd16c54261b3 Initial load
duke
parents:
diff changeset
    16
#
fd16c54261b3 Initial load
duke
parents:
diff changeset
    17
# You should have received a copy of the GNU General Public License version
fd16c54261b3 Initial load
duke
parents:
diff changeset
    18
# 2 along with this work; if not, write to the Free Software Foundation,
fd16c54261b3 Initial load
duke
parents:
diff changeset
    19
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
fd16c54261b3 Initial load
duke
parents:
diff changeset
    20
#
5499
eb0b3e373167 6943119: Rebrand source copyright notices
ohair
parents: 3792
diff changeset
    21
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
eb0b3e373167 6943119: Rebrand source copyright notices
ohair
parents: 3792
diff changeset
    22
# or visit www.oracle.com if you need additional information or have any
eb0b3e373167 6943119: Rebrand source copyright notices
ohair
parents: 3792
diff changeset
    23
# questions.
0
fd16c54261b3 Initial load
duke
parents:
diff changeset
    24
#
fd16c54261b3 Initial load
duke
parents:
diff changeset
    25
fd16c54261b3 Initial load
duke
parents:
diff changeset
    26
################################################################
fd16c54261b3 Initial load
duke
parents:
diff changeset
    27
# LANGTOOLS TARGETS
fd16c54261b3 Initial load
duke
parents:
diff changeset
    28
################################################################
fd16c54261b3 Initial load
duke
parents:
diff changeset
    29
fd16c54261b3 Initial load
duke
parents:
diff changeset
    30
LANGTOOLS_BUILD_ARGUMENTS = \
fd16c54261b3 Initial load
duke
parents:
diff changeset
    31
   $(COMMON_BUILD_ARGUMENTS) \
fd16c54261b3 Initial load
duke
parents:
diff changeset
    32
   ALT_OUTPUTDIR=$(LANGTOOLS_OUTPUTDIR) \
fd16c54261b3 Initial load
duke
parents:
diff changeset
    33
   ALT_BOOTDIR=$(BOOTDIR)
fd16c54261b3 Initial load
duke
parents:
diff changeset
    34
fd16c54261b3 Initial load
duke
parents:
diff changeset
    35
langtools: langtools-build
fd16c54261b3 Initial load
duke
parents:
diff changeset
    36
langtools-build:
fd16c54261b3 Initial load
duke
parents:
diff changeset
    37
	$(MKDIR) -p $(LANGTOOLS_OUTPUTDIR)
3789
2040d99c6f14 6855174: Improve log output when builds transition from one workspace to another
ohair
parents: 0
diff changeset
    38
	@$(call MakeStart, langtools, all)
0
fd16c54261b3 Initial load
duke
parents:
diff changeset
    39
	($(CD) $(LANGTOOLS_TOPDIR)/make && \
3789
2040d99c6f14 6855174: Improve log output when builds transition from one workspace to another
ohair
parents: 0
diff changeset
    40
	  $(MAKE) $(LANGTOOLS_BUILD_ARGUMENTS) all)
2040d99c6f14 6855174: Improve log output when builds transition from one workspace to another
ohair
parents: 0
diff changeset
    41
	@$(call MakeFinish, langtools, all)
0
fd16c54261b3 Initial load
duke
parents:
diff changeset
    42
fd16c54261b3 Initial load
duke
parents:
diff changeset
    43
langtools-clobber::
fd16c54261b3 Initial load
duke
parents:
diff changeset
    44
	$(MKDIR) -p $(LANGTOOLS_OUTPUTDIR)
3789
2040d99c6f14 6855174: Improve log output when builds transition from one workspace to another
ohair
parents: 0
diff changeset
    45
	@$(call MakeStart, langtools, clobber)
0
fd16c54261b3 Initial load
duke
parents:
diff changeset
    46
	($(CD) $(LANGTOOLS_TOPDIR)/make &&  \
3789
2040d99c6f14 6855174: Improve log output when builds transition from one workspace to another
ohair
parents: 0
diff changeset
    47
	  $(MAKE) $(LANGTOOLS_BUILD_ARGUMENTS) clobber)
2040d99c6f14 6855174: Improve log output when builds transition from one workspace to another
ohair
parents: 0
diff changeset
    48
	@$(call MakeFinish, langtools, clobber)
0
fd16c54261b3 Initial load
duke
parents:
diff changeset
    49
fd16c54261b3 Initial load
duke
parents:
diff changeset
    50
.PHONY: langtools langtools-build langtools-clobber
fd16c54261b3 Initial load
duke
parents:
diff changeset
    51