make/test/JtregGraalUnit.gmk
changeset 54076 4b4745d185eb
parent 52910 583fd71c47d6
child 54084 84f10bbf993f
equal deleted inserted replaced
54075:daec95ed6795 54076:4b4745d185eb
    39 TARGETS_IMAGE :=
    39 TARGETS_IMAGE :=
    40 TARGETS_EXTRA_LIB :=
    40 TARGETS_EXTRA_LIB :=
    41 
    41 
    42 ifeq ($(INCLUDE_GRAAL), true)
    42 ifeq ($(INCLUDE_GRAAL), true)
    43   ifneq ($(GRAALUNIT_LIB), )
    43   ifneq ($(GRAALUNIT_LIB), )
       
    44 
    44     SRC_DIR := $(TOPDIR)/src/jdk.internal.vm.compiler/share/classes
    45     SRC_DIR := $(TOPDIR)/src/jdk.internal.vm.compiler/share/classes
    45     TEST_DIR := $(TOPDIR)/test/hotspot/jtreg/compiler/graalunit
    46     TEST_DIR := $(TOPDIR)/test/hotspot/jtreg/compiler/graalunit
    46     COMPILE_OUTPUTDIR := $(SUPPORT_OUTPUTDIR)/test/graalunit
    47     COMPILE_OUTPUTDIR := $(SUPPORT_OUTPUTDIR)/test/graalunit
    47     LIB_OUTPUTDIR := $(TEST_IMAGE_DIR)/hotspot/jtreg/graal
    48     LIB_OUTPUTDIR := $(TEST_IMAGE_DIR)/hotspot/jtreg/graal
    48 
    49 
    49     TEST_COMPILE_CP := \
    50     # This evaluation is expensive and should only be done if this target was
    50         $(JDK_OUTPUTDIR)/modules/jdk.internal.vm.compiler \
    51     # explicitly called.
    51         $(JDK_OUTPUTDIR)/modules/jdk.internal.vm.ci \
    52     ifneq ($(filter build-test-hotspot-jtreg-graal, $(MAKECMDGOALS)), )
    52         $(LIB_OUTPUTDIR)/junit-4.12.jar \
       
    53         $(LIB_OUTPUTDIR)/asm-5.0.4.jar \
       
    54         $(LIB_OUTPUTDIR)/asm-tree-5.0.4.jar \
       
    55         $(LIB_OUTPUTDIR)/java-allocation-instrumenter.jar \
       
    56         $(LIB_OUTPUTDIR)/hamcrest-core-1.3.jar
       
    57 
    53 
    58     TEST_JAVAC_FLAGS := \
    54       TEST_COMPILE_CP := \
    59         -Xlint:none \
    55           $(JDK_OUTPUTDIR)/modules/jdk.internal.vm.compiler \
    60         -processorpath $(BUILDTOOLS_OUTPUTDIR)/jdk.vm.compiler.replacements.verifier.jar \
    56           $(JDK_OUTPUTDIR)/modules/jdk.internal.vm.ci \
    61         --add-exports jdk.unsupported/sun.misc=ALL-UNNAMED \
    57           $(LIB_OUTPUTDIR)/junit-4.12.jar \
    62         --add-exports java.base/jdk.internal.misc=ALL-UNNAMED \
    58           $(LIB_OUTPUTDIR)/asm-5.0.4.jar \
       
    59           $(LIB_OUTPUTDIR)/asm-tree-5.0.4.jar \
       
    60           $(LIB_OUTPUTDIR)/java-allocation-instrumenter.jar \
       
    61           $(LIB_OUTPUTDIR)/hamcrest-core-1.3.jar
    63 
    62 
    64     ### Copy 3rd party libs
    63       TEST_JAVAC_FLAGS := \
    65     $(eval $(call SetupCopyFiles, COPY_GRAALUNIT_LIBS, \
    64           -Xlint:none \
    66         FILES := $(wildcard $(GRAALUNIT_LIB)/*.jar), \
    65           -processorpath $(BUILDTOOLS_OUTPUTDIR)/jdk.vm.compiler.replacements.verifier.jar \
    67         DEST := $(LIB_OUTPUTDIR), \
    66           --add-exports jdk.unsupported/sun.misc=ALL-UNNAMED \
    68     ))
    67           --add-exports java.base/jdk.internal.misc=ALL-UNNAMED \
    69 
    68 
    70     TARGETS_EXTRA_LIB += $(COPY_GRAALUNIT_LIBS)
    69       ### Copy 3rd party libs
       
    70       $(eval $(call SetupCopyFiles, COPY_GRAALUNIT_LIBS, \
       
    71           FILES := $(wildcard $(GRAALUNIT_LIB)/*.jar), \
       
    72           DEST := $(LIB_OUTPUTDIR), \
       
    73       ))
    71 
    74 
    72     ### Compile graalunit tests
    75       TARGETS_EXTRA_LIB += $(COPY_GRAALUNIT_LIBS)
    73     $(eval $(call SetupJavaCompilation, BUILD_VM_COMPILER_TESTS, \
       
    74         SETUP := GENERATE_USINGJDKBYTECODE, \
       
    75         SRC := \
       
    76             $(SRC_DIR)/jdk.internal.vm.compiler.collections.test/src \
       
    77             $(SRC_DIR)/org.graalvm.compiler.api.directives.test/src \
       
    78             $(SRC_DIR)/org.graalvm.compiler.api.test/src \
       
    79             $(SRC_DIR)/org.graalvm.compiler.asm.aarch64.test/src \
       
    80             $(SRC_DIR)/org.graalvm.compiler.asm.amd64.test/src \
       
    81             $(SRC_DIR)/org.graalvm.compiler.asm.sparc.test/src \
       
    82             $(SRC_DIR)/org.graalvm.compiler.asm.test/src \
       
    83             $(SRC_DIR)/org.graalvm.compiler.core.aarch64.test/src \
       
    84             $(SRC_DIR)/org.graalvm.compiler.core.amd64.test/src \
       
    85             $(SRC_DIR)/org.graalvm.compiler.core.jdk9.test/src \
       
    86             $(SRC_DIR)/org.graalvm.compiler.core.test/src \
       
    87             $(SRC_DIR)/org.graalvm.compiler.debug.test/src \
       
    88             $(SRC_DIR)/org.graalvm.compiler.graph.test/src \
       
    89             $(SRC_DIR)/org.graalvm.compiler.hotspot.amd64.test/src \
       
    90             $(SRC_DIR)/org.graalvm.compiler.hotspot.lir.test/src \
       
    91             $(SRC_DIR)/org.graalvm.compiler.hotspot.sparc.test/src \
       
    92             $(SRC_DIR)/org.graalvm.compiler.hotspot.test/src \
       
    93             $(SRC_DIR)/org.graalvm.compiler.jtt/src \
       
    94             $(SRC_DIR)/org.graalvm.compiler.lir.jtt/src \
       
    95             $(SRC_DIR)/org.graalvm.compiler.lir.test/src \
       
    96             $(SRC_DIR)/org.graalvm.compiler.loop.test/src \
       
    97             $(SRC_DIR)/org.graalvm.compiler.nodes.test/src \
       
    98             $(SRC_DIR)/org.graalvm.compiler.options.test/src \
       
    99             $(SRC_DIR)/org.graalvm.compiler.phases.common.test/src \
       
   100             $(SRC_DIR)/org.graalvm.compiler.replacements.jdk12.test/src \
       
   101             $(SRC_DIR)/org.graalvm.compiler.replacements.jdk9.test/src \
       
   102             $(SRC_DIR)/org.graalvm.compiler.replacements.test/src \
       
   103             $(SRC_DIR)/org.graalvm.compiler.test/src \
       
   104             $(SRC_DIR)/org.graalvm.util.test/src \
       
   105             , \
       
   106         EXCLUDE_FILES := org/graalvm/compiler/core/test/VerifyDebugUsageTest.java, \
       
   107         BIN := $(COMPILE_OUTPUTDIR)/jdk.vm.compiler.tests, \
       
   108         CLASSPATH := $(TEST_COMPILE_CP), \
       
   109         ADD_JAVAC_FLAGS := $(TEST_JAVAC_FLAGS), \
       
   110     ))
       
   111 
    76 
   112     TARGETS_BUILD += $(BUILD_VM_COMPILER_TESTS)
    77       ### Compile graalunit tests
       
    78       $(eval $(call SetupJavaCompilation, BUILD_VM_COMPILER_TESTS, \
       
    79           SETUP := GENERATE_USINGJDKBYTECODE, \
       
    80           SRC := \
       
    81               $(SRC_DIR)/jdk.internal.vm.compiler.collections.test/src \
       
    82               $(SRC_DIR)/org.graalvm.compiler.api.directives.test/src \
       
    83               $(SRC_DIR)/org.graalvm.compiler.api.test/src \
       
    84               $(SRC_DIR)/org.graalvm.compiler.asm.aarch64.test/src \
       
    85               $(SRC_DIR)/org.graalvm.compiler.asm.amd64.test/src \
       
    86               $(SRC_DIR)/org.graalvm.compiler.asm.sparc.test/src \
       
    87               $(SRC_DIR)/org.graalvm.compiler.asm.test/src \
       
    88               $(SRC_DIR)/org.graalvm.compiler.core.aarch64.test/src \
       
    89               $(SRC_DIR)/org.graalvm.compiler.core.amd64.test/src \
       
    90               $(SRC_DIR)/org.graalvm.compiler.core.jdk9.test/src \
       
    91               $(SRC_DIR)/org.graalvm.compiler.core.test/src \
       
    92               $(SRC_DIR)/org.graalvm.compiler.debug.test/src \
       
    93               $(SRC_DIR)/org.graalvm.compiler.graph.test/src \
       
    94               $(SRC_DIR)/org.graalvm.compiler.hotspot.amd64.test/src \
       
    95               $(SRC_DIR)/org.graalvm.compiler.hotspot.lir.test/src \
       
    96               $(SRC_DIR)/org.graalvm.compiler.hotspot.sparc.test/src \
       
    97               $(SRC_DIR)/org.graalvm.compiler.hotspot.test/src \
       
    98               $(SRC_DIR)/org.graalvm.compiler.jtt/src \
       
    99               $(SRC_DIR)/org.graalvm.compiler.lir.jtt/src \
       
   100               $(SRC_DIR)/org.graalvm.compiler.lir.test/src \
       
   101               $(SRC_DIR)/org.graalvm.compiler.loop.test/src \
       
   102               $(SRC_DIR)/org.graalvm.compiler.nodes.test/src \
       
   103               $(SRC_DIR)/org.graalvm.compiler.options.test/src \
       
   104               $(SRC_DIR)/org.graalvm.compiler.phases.common.test/src \
       
   105               $(SRC_DIR)/org.graalvm.compiler.replacements.jdk12.test/src \
       
   106               $(SRC_DIR)/org.graalvm.compiler.replacements.jdk9.test/src \
       
   107               $(SRC_DIR)/org.graalvm.compiler.replacements.test/src \
       
   108               $(SRC_DIR)/org.graalvm.compiler.test/src \
       
   109               $(SRC_DIR)/org.graalvm.util.test/src \
       
   110               , \
       
   111           EXCLUDE_FILES := org/graalvm/compiler/core/test/VerifyDebugUsageTest.java, \
       
   112           BIN := $(COMPILE_OUTPUTDIR)/jdk.vm.compiler.tests, \
       
   113           CLASSPATH := $(TEST_COMPILE_CP), \
       
   114           ADD_JAVAC_FLAGS := $(TEST_JAVAC_FLAGS), \
       
   115       ))
   113 
   116 
   114     ### Compile graalunit tests which require -XDstringConcat=inline
   117       TARGETS_BUILD += $(BUILD_VM_COMPILER_TESTS)
   115     $(eval $(call SetupJavaCompilation, BUILD_VM_COMPILER_TESTS_SET2, \
       
   116         SETUP := GENERATE_USINGJDKBYTECODE, \
       
   117         DEPENDS := $(BUILD_VM_COMPILER_TESTS), \
       
   118         SRC := $(SRC_DIR)/org.graalvm.compiler.core.test/src, \
       
   119         INCLUDE_FILES := org/graalvm/compiler/core/test/VerifyDebugUsageTest.java, \
       
   120         BIN := $(COMPILE_OUTPUTDIR)/jdk.vm.compiler.tests, \
       
   121         CLASSPATH := \
       
   122             $(TEST_COMPILE_CP) \
       
   123             $(COMPILE_OUTPUTDIR)/jdk.vm.compiler.tests \
       
   124             , \
       
   125         ADD_JAVAC_FLAGS := \
       
   126             $(TEST_JAVAC_FLAGS) \
       
   127             -XDstringConcat=inline \
       
   128             , \
       
   129     ))
       
   130 
   118 
   131     TARGETS_BUILD += $(BUILD_VM_COMPILER_TESTS_SET2)
   119       ### Compile graalunit tests which require -XDstringConcat=inline
       
   120       $(eval $(call SetupJavaCompilation, BUILD_VM_COMPILER_TESTS_SET2, \
       
   121           SETUP := GENERATE_USINGJDKBYTECODE, \
       
   122           DEPENDS := $(BUILD_VM_COMPILER_TESTS), \
       
   123           SRC := $(SRC_DIR)/org.graalvm.compiler.core.test/src, \
       
   124           INCLUDE_FILES := org/graalvm/compiler/core/test/VerifyDebugUsageTest.java, \
       
   125           BIN := $(COMPILE_OUTPUTDIR)/jdk.vm.compiler.tests, \
       
   126           CLASSPATH := \
       
   127               $(TEST_COMPILE_CP) \
       
   128               $(COMPILE_OUTPUTDIR)/jdk.vm.compiler.tests \
       
   129               , \
       
   130           ADD_JAVAC_FLAGS := \
       
   131               $(TEST_JAVAC_FLAGS) \
       
   132               -XDstringConcat=inline \
       
   133               , \
       
   134       ))
   132 
   135 
   133     ### Generate jdk.vm.compiler.tests.jar
   136       TARGETS_BUILD += $(BUILD_VM_COMPILER_TESTS_SET2)
   134     $(eval $(call SetupJarArchive, BUILD_VM_COMPILER_TESTS_JAR, \
       
   135         DEPENDENCIES := $(BUILD_VM_COMPILER_TESTS) $(BUILD_VM_COMPILER_TESTS_SET2), \
       
   136         SRCS := $(COMPILE_OUTPUTDIR)/jdk.vm.compiler.tests, \
       
   137         JAR := $(COMPILE_OUTPUTDIR)/jdk.vm.compiler.tests.jar, \
       
   138     ))
       
   139 
   137 
   140     TARGETS_BUILD += $(BUILD_VM_COMPILER_TESTS_JAR)
   138       ### Generate jdk.vm.compiler.tests.jar
       
   139       $(eval $(call SetupJarArchive, BUILD_VM_COMPILER_TESTS_JAR, \
       
   140           DEPENDENCIES := $(BUILD_VM_COMPILER_TESTS) $(BUILD_VM_COMPILER_TESTS_SET2), \
       
   141           SRCS := $(COMPILE_OUTPUTDIR)/jdk.vm.compiler.tests, \
       
   142           JAR := $(COMPILE_OUTPUTDIR)/jdk.vm.compiler.tests.jar, \
       
   143       ))
   141 
   144 
   142     ### Compile and build mxtool
   145       TARGETS_BUILD += $(BUILD_VM_COMPILER_TESTS_JAR)
   143     $(eval $(call SetupJavaCompilation, BUILD_MXTOOL, \
       
   144         SETUP := GENERATE_USINGJDKBYTECODE, \
       
   145         SRC := $(TEST_DIR)/com.oracle.mxtool.junit, \
       
   146         BIN := $(COMPILE_OUTPUTDIR)/com.oracle.mxtool.junit, \
       
   147         JAR := $(COMPILE_OUTPUTDIR)/com.oracle.mxtool.junit.jar, \
       
   148         CLASSPATH := $(LIB_OUTPUTDIR)/junit-4.12.jar, \
       
   149     ))
       
   150 
   146 
   151     TARGETS_BUILD += $(BUILD_MXTOOL)
   147       ### Compile and build mxtool
       
   148       $(eval $(call SetupJavaCompilation, BUILD_MXTOOL, \
       
   149           SETUP := GENERATE_USINGJDKBYTECODE, \
       
   150           SRC := $(TEST_DIR)/com.oracle.mxtool.junit, \
       
   151           BIN := $(COMPILE_OUTPUTDIR)/com.oracle.mxtool.junit, \
       
   152           JAR := $(COMPILE_OUTPUTDIR)/com.oracle.mxtool.junit.jar, \
       
   153           CLASSPATH := $(LIB_OUTPUTDIR)/junit-4.12.jar, \
       
   154       ))
   152 
   155 
       
   156       TARGETS_BUILD += $(BUILD_MXTOOL)
       
   157 
       
   158       $(TARGETS_BUILD): $(TARGETS_EXTRA_LIB)
       
   159 
       
   160     endif # build-test-hotspot-jtreg-graal
   153 
   161 
   154     ################################################################################
   162     ################################################################################
   155     # Targets for building test-image.
   163     # Targets for building test-image.
   156     ################################################################################
   164     ################################################################################
   157 
   165 
   166   else
   174   else
   167     $(info Skip building of Graal unit tests because 3rd party libraries directory is not specified)
   175     $(info Skip building of Graal unit tests because 3rd party libraries directory is not specified)
   168   endif
   176   endif
   169 endif
   177 endif
   170 
   178 
   171 $(TARGETS_BUILD): $(TARGETS_EXTRA_LIB)
       
   172 build-test-hotspot-jtreg-graal: $(TARGETS_BUILD)
   179 build-test-hotspot-jtreg-graal: $(TARGETS_BUILD)
   173 test-image-hotspot-jtreg-graal: $(TARGETS_IMAGE)
   180 test-image-hotspot-jtreg-graal: $(TARGETS_IMAGE)
   174 
   181 
   175 all: build-test-hotspot-jtreg-graal
   182 all: build-test-hotspot-jtreg-graal
   176 test-image: test-image-hotspot-jtreg-graal
   183 test-image: test-image-hotspot-jtreg-graal