Mercurial > hg > truffle
annotate make/solaris/makefiles/rules.make @ 3762:5c0a3c1858b1
7048782: CMS: assert(last_chunk_index_to_check<= last_chunk_index) failed: parCardTableModRefBS.cpp:359
Summary: The LNC array is sized before the start of a scavenge, while the heap may expand during a scavenge. With CMS, the last block of an arbitrary suffice of the LNC array may expand due to coalition with the expansion delta. We now take care not to attempt access past the end of the LNC array. LNC array code will be cleaned up and suitably encapsulated as part of the forthcoming performance RFE 7043675.
Reviewed-by: brutisso
author | ysr |
---|---|
date | Thu, 02 Jun 2011 10:23:36 -0700 |
parents | 1d1603768966 |
children | 719f7007c8e8 |
rev | line source |
---|---|
0 | 1 # |
2426
1d1603768966
7010070: Update all 2010 Oracle-changed OpenJDK files to have the proper copyright dates - second pass
trims
parents:
2199
diff
changeset
|
2 # Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved. |
0 | 3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 # | |
5 # This code is free software; you can redistribute it and/or modify it | |
6 # under the terms of the GNU General Public License version 2 only, as | |
7 # published by the Free Software Foundation. | |
8 # | |
9 # This code is distributed in the hope that it will be useful, but WITHOUT | |
10 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | |
11 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | |
12 # version 2 for more details (a copy is included in the LICENSE file that | |
13 # accompanied this code). | |
14 # | |
15 # You should have received a copy of the GNU General Public License version | |
16 # 2 along with this work; if not, write to the Free Software Foundation, | |
17 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. | |
18 # | |
1552
c18cbe5936b8
6941466: Oracle rebranding changes for Hotspot repositories
trims
parents:
971
diff
changeset
|
19 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
c18cbe5936b8
6941466: Oracle rebranding changes for Hotspot repositories
trims
parents:
971
diff
changeset
|
20 # or visit www.oracle.com if you need additional information or have any |
c18cbe5936b8
6941466: Oracle rebranding changes for Hotspot repositories
trims
parents:
971
diff
changeset
|
21 # questions. |
0 | 22 # |
23 # | |
24 | |
25 # Common rules/macros for the vm, adlc. | |
26 | |
27 # Tell make that .cpp is important | |
28 .SUFFIXES: .cpp $(SUFFIXES) | |
29 | |
30 # For now. Other makefiles use CPP as the c++ compiler, but that should really | |
31 # name the preprocessor. | |
32 ifeq ($(CCC),) | |
33 CCC = $(CPP) | |
34 endif | |
35 | |
36 DEMANGLER = c++filt | |
37 DEMANGLE = $(DEMANGLER) < $@ > .$@ && mv -f .$@ $@ | |
38 | |
39 # $(CC) is the c compiler (cc/gcc), $(CCC) is the c++ compiler (CC/g++). | |
40 C_COMPILE = $(CC) $(CPPFLAGS) $(CFLAGS) | |
41 CC_COMPILE = $(CCC) $(CPPFLAGS) $(CFLAGS) | |
42 | |
43 AS.S = $(AS) $(ASFLAGS) | |
44 | |
45 COMPILE.c = $(C_COMPILE) -c | |
46 GENASM.c = $(C_COMPILE) -S | |
47 LINK.c = $(CC) $(LFLAGS) $(AOUT_FLAGS) $(PROF_AOUT_FLAGS) | |
48 LINK_LIB.c = $(CC) $(LFLAGS) $(SHARED_FLAG) | |
49 PREPROCESS.c = $(C_COMPILE) -E | |
50 | |
51 COMPILE.CC = $(CC_COMPILE) -c | |
52 GENASM.CC = $(CC_COMPILE) -S | |
53 LINK.CC = $(CCC) $(LFLAGS) $(AOUT_FLAGS) $(PROF_AOUT_FLAGS) | |
54 LINK_NOPROF.CC = $(CCC) $(LFLAGS) $(AOUT_FLAGS) | |
55 LINK_LIB.CC = $(CCC) $(LFLAGS) $(SHARED_FLAG) | |
56 PREPROCESS.CC = $(CC_COMPILE) -E | |
57 | |
58 # Effect of REMOVE_TARGET is to delete out-of-date files during "gnumake -k". | |
59 REMOVE_TARGET = rm -f $@ | |
60 | |
61 # Synonyms. | |
62 COMPILE.cpp = $(COMPILE.CC) | |
63 GENASM.cpp = $(GENASM.CC) | |
64 LINK.cpp = $(LINK.CC) | |
65 LINK_LIB.cpp = $(LINK_LIB.CC) | |
66 PREPROCESS.cpp = $(PREPROCESS.CC) | |
67 | |
68 # Note use of ALT_BOOTDIR to explicitly specify location of java and | |
69 # javac; this is the same environment variable used in the J2SE build | |
70 # process for overriding the default spec, which is BOOTDIR. | |
71 # Note also that we fall back to using JAVA_HOME if neither of these is | |
72 # specified. | |
73 | |
74 ifdef ALT_BOOTDIR | |
75 | |
76 RUN.JAVA = $(ALT_BOOTDIR)/bin/java | |
77 RUN.JAVAP = $(ALT_BOOTDIR)/bin/javap | |
78 RUN.JAVAH = $(ALT_BOOTDIR)/bin/javah | |
79 RUN.JAR = $(ALT_BOOTDIR)/bin/jar | |
80 COMPILE.JAVAC = $(ALT_BOOTDIR)/bin/javac | |
81 COMPILE.RMIC = $(ALT_BOOTDIR)/bin/rmic | |
82 BOOT_JAVA_HOME = $(ALT_BOOTDIR) | |
83 | |
84 else | |
85 | |
86 ifdef BOOTDIR | |
87 | |
88 RUN.JAVA = $(BOOTDIR)/bin/java | |
89 RUN.JAVAP = $(BOOTDIR)/bin/javap | |
90 RUN.JAVAH = $(BOOTDIR)/bin/javah | |
91 RUN.JAR = $(BOOTDIR)/bin/jar | |
92 COMPILE.JAVAC = $(BOOTDIR)/bin/javac | |
93 COMPILE.RMIC = $(BOOTDIR)/bin/rmic | |
94 BOOT_JAVA_HOME = $(BOOTDIR) | |
95 | |
96 else | |
97 | |
98 ifdef JAVA_HOME | |
99 | |
100 RUN.JAVA = $(JAVA_HOME)/bin/java | |
101 RUN.JAVAP = $(JAVA_HOME)/bin/javap | |
102 RUN.JAVAH = $(JAVA_HOME)/bin/javah | |
103 RUN.JAR = $(JAVA_HOME)/bin/jar | |
104 COMPILE.JAVAC = $(JAVA_HOME)/bin/javac | |
105 COMPILE.RMIC = $(JAVA_HOME)/bin/rmic | |
106 BOOT_JAVA_HOME = $(JAVA_HOME) | |
107 | |
108 else | |
109 | |
110 # take from the PATH, if ALT_BOOTDIR, BOOTDIR and JAVA_HOME are not defined | |
111 # note that this is to support hotspot build without SA. To build | |
112 # SA along with hotspot, you need to define ALT_BOOTDIR, BOOTDIR or JAVA_HOME | |
113 | |
114 RUN.JAVA = java | |
115 RUN.JAVAP = javap | |
116 RUN.JAVAH = javah | |
117 RUN.JAR = jar | |
118 COMPILE.JAVAC = javac | |
119 COMPILE.RMIC = rmic | |
120 | |
121 endif | |
122 endif | |
123 endif | |
124 | |
971
0fc81f0a8ca8
6873059: Explicitly use -source 6 -target 6 when compiling with the boot jdk
andrew
parents:
235
diff
changeset
|
125 COMPILE.JAVAC += $(BOOTSTRAP_JAVAC_FLAGS) |
0fc81f0a8ca8
6873059: Explicitly use -source 6 -target 6 when compiling with the boot jdk
andrew
parents:
235
diff
changeset
|
126 |
0 | 127 SUM = /usr/bin/sum |
128 | |
129 # 'gmake MAKE_VERBOSE=y' gives all the gory details. | |
130 QUIETLY$(MAKE_VERBOSE) = @ | |
131 RUN.JAR$(MAKE_VERBOSE) += >/dev/null | |
132 | |
971
0fc81f0a8ca8
6873059: Explicitly use -source 6 -target 6 when compiling with the boot jdk
andrew
parents:
235
diff
changeset
|
133 # Settings for javac |
0fc81f0a8ca8
6873059: Explicitly use -source 6 -target 6 when compiling with the boot jdk
andrew
parents:
235
diff
changeset
|
134 BOOT_SOURCE_LANGUAGE_VERSION = 6 |
0fc81f0a8ca8
6873059: Explicitly use -source 6 -target 6 when compiling with the boot jdk
andrew
parents:
235
diff
changeset
|
135 BOOT_TARGET_CLASS_VERSION = 6 |
0fc81f0a8ca8
6873059: Explicitly use -source 6 -target 6 when compiling with the boot jdk
andrew
parents:
235
diff
changeset
|
136 JAVAC_FLAGS = -g -encoding ascii |
0fc81f0a8ca8
6873059: Explicitly use -source 6 -target 6 when compiling with the boot jdk
andrew
parents:
235
diff
changeset
|
137 BOOTSTRAP_JAVAC_FLAGS = $(JAVAC_FLAGS) -source $(BOOT_SOURCE_LANGUAGE_VERSION) -target $(BOOT_TARGET_CLASS_VERSION) |
0fc81f0a8ca8
6873059: Explicitly use -source 6 -target 6 when compiling with the boot jdk
andrew
parents:
235
diff
changeset
|
138 |
0 | 139 # With parallel makes, print a message at the end of compilation. |
140 ifeq ($(findstring j,$(MFLAGS)),j) | |
141 COMPILE_DONE = && { echo Done with $<; } | |
142 endif | |
143 | |
228
f232d7d67023
6717128: Using relative path for ALT_OUTPUTDIR does not work properly
xlu
parents:
198
diff
changeset
|
144 # Include NONPIC_OBJ_FILES definition |
f232d7d67023
6717128: Using relative path for ALT_OUTPUTDIR does not work properly
xlu
parents:
198
diff
changeset
|
145 ifndef LP64 |
f232d7d67023
6717128: Using relative path for ALT_OUTPUTDIR does not work properly
xlu
parents:
198
diff
changeset
|
146 include $(GAMMADIR)/make/pic.make |
f232d7d67023
6717128: Using relative path for ALT_OUTPUTDIR does not work properly
xlu
parents:
198
diff
changeset
|
147 endif |
0 | 148 |
2199
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
1972
diff
changeset
|
149 include $(GAMMADIR)/make/altsrc.make |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
1972
diff
changeset
|
150 |
0 | 151 # Sun compiler for 64 bit Solaris does not support building non-PIC object files. |
152 ifdef LP64 | |
153 %.o: %.cpp | |
154 @echo Compiling $< | |
155 $(QUIETLY) $(REMOVE_TARGET) | |
1972 | 156 $(QUIETLY) $(COMPILE.CC) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE) |
0 | 157 else |
158 %.o: %.cpp | |
159 @echo Compiling $< | |
160 $(QUIETLY) $(REMOVE_TARGET) | |
161 $(QUIETLY) $(if $(findstring $@, $(NONPIC_OBJ_FILES)), \ | |
1972 | 162 $(subst $(VM_PICFLAG), ,$(COMPILE.CC)) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE), \ |
163 $(COMPILE.CC) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE)) | |
0 | 164 endif |
165 | |
166 %.o: %.s | |
167 @echo Assembling $< | |
168 $(QUIETLY) $(REMOVE_TARGET) | |
169 $(QUIETLY) $(AS.S) -o $@ $< $(COMPILE_DONE) | |
170 | |
171 %.s: %.cpp | |
172 @echo Generating assembly for $< | |
173 $(QUIETLY) $(GENASM.CC) -o $@ $< | |
174 $(QUIETLY) $(DEMANGLE) $(COMPILE_DONE) | |
175 | |
176 # Intermediate files (for debugging macros) | |
177 %.i: %.cpp | |
178 @echo Preprocessing $< to $@ | |
179 $(QUIETLY) $(PREPROCESS.CC) $< > $@ $(COMPILE_DONE) | |
180 | |
181 # Override gnumake built-in rules which do sccs get operations badly. | |
182 # (They put the checked out code in the current directory, not in the | |
183 # directory of the original file.) Since this is a symptom of a teamware | |
184 # failure, and since not all problems can be detected by gnumake due | |
185 # to incomplete dependency checking... just complain and stop. | |
186 %:: s.% | |
187 @echo "=========================================================" | |
188 @echo File $@ | |
189 @echo is out of date with respect to its SCCS file. | |
190 @echo This file may be from an unresolved Teamware conflict. | |
191 @echo This is also a symptom of a Teamware bringover/putback failure | |
192 @echo in which SCCS files are updated but not checked out. | |
193 @echo Check for other out of date files in your workspace. | |
194 @echo "=========================================================" | |
195 @exit 666 | |
196 | |
197 %:: SCCS/s.% | |
198 @echo "=========================================================" | |
199 @echo File $@ | |
200 @echo is out of date with respect to its SCCS file. | |
201 @echo This file may be from an unresolved Teamware conflict. | |
202 @echo This is also a symptom of a Teamware bringover/putback failure | |
203 @echo in which SCCS files are updated but not checked out. | |
204 @echo Check for other out of date files in your workspace. | |
205 @echo "=========================================================" | |
206 @exit 666 | |
207 | |
208 .PHONY: default |