6778657: Casts in SharedRuntime::f2i, f2l, d2i and d2l rely on undefined C++ behaviour
Summary: Replaces SharedRuntime::f2i et al with versions that should work
Reviewed-by: never
Contributed-by: gbenson@redhat.com
## Makefile to run jtreg and any other tests## Get OS/ARCH specificsOSNAME = $(shell uname -s)ifeq ($(OSNAME), SunOS) PLATFORM = solaris JT_PLATFORM = solaris ARCH = $(shell uname -p) ifeq ($(ARCH), i386) ARCH=i586 endifendififeq ($(OSNAME), Linux) PLATFORM = linux JT_PLATFORM = linux ARCH = $(shell uname -m) ifeq ($(ARCH), i386) ARCH=i586 endifendififeq ($(OSNAME), Windows_NT) PLATFORM = windows JT_PLATFORM = win32 ifeq ($(word 1, $(PROCESSOR_IDENTIFIER)),ia64) ARCH=ia64 else ifeq ($(word 1, $(PROCESSOR_IDENTIFIER)),AMD64) ARCH=x64 else ifeq ($(word 1, $(PROCESSOR_IDENTIFIER)),EM64T) ARCH=x64 else ARCH=i586 endif endif endifendif# Root of this test area (important to use full paths in some places)TEST_ROOT := $(shell pwd)# Default bundle of all test results (passed or not)JPRT_ARCHIVE_BUNDLE=$(TEST_ROOT)/JPRT_ARCHIVE_BUNDLE.zip# Default home for JTREGifeq ($(PLATFORM), windows) SLASH_JAVA = J:else SLASH_JAVA = /javaendif# Default JTREG to runJT_HOME = $(SLASH_JAVA)/svc/jct-tools3.2.2_02JTREG = $(JT_HOME)/$(JT_PLATFORM)/bin/jtreg# Default JDK for JTREGifdef JPRT_JAVA_HOME JT_JAVA = $(JPRT_JAVA_HOME)else JT_JAVA = $(SLASH_JAVA)/re/jdk/1.6.0/archive/fcs/binaries/$(PLATFORM)-$(ARCH)endif# Default JDK to testTESTJAVA = $(SLASH_JAVA)/re/jdk/1.7.0/promoted/latest/binaries/$(PLATFORM)-$(ARCH)TESTBOOTCLASSPATH = $(PRODUCT_HOME)/dist/lib/classes.jar# The test directories to runDEFAULT_TESTDIRS = .TESTDIRS = $(DEFAULT_TESTDIRS)# Root of all test resultsTEST_OUTPUT_DIR = $(TEST_ROOT)/o_$(PLATFORM)-$(ARCH)# Export this setting and pass it in.JAVA_TOOL_OPTIONS = -Djava.awt.headless=trueexport JAVA_TOOL_OPTIONS# Default make ruleall javac javadoc javah javap apt: clean check jtreg-tests $(JPRT_ARCHIVE_BUNDLE) @echo "Testing completed successfully"# for use with JPRT -testruleall: TESTDIRS = .javac fastjavac: TESTDIRS = tools/javacjavadoc: TESTDIRS = tools/javadoc com/sun/javadocjavah: TESTDIRS = tools/javahjavap: TESTDIRS = tools/javapapt: TESTDIRS = tools/aptfastjavac: SAMEVM = -samevm# Check to make sure these directories existcheck: $(JT_HOME) $(PRODUCT_HOME) $(JTREG)# Run the testsjtreg-tests: FRC ls /opt/jprt /opt/jprt/jdk* @echo "Using export JAVA_TOOL_OPTIONS=$(JAVA_TOOL_OPTIONS)" @rm -f -r $(TEST_OUTPUT_DIR)/JTwork $(TEST_OUTPUT_DIR)/JTreport @mkdir -p $(TEST_OUTPUT_DIR) JT_JAVA=$(JT_JAVA) $(JTREG) -k:\!ignore -a -v:fail,error $(SAMEVM) \ -r:$(TEST_OUTPUT_DIR)/JTreport \ -w:$(TEST_OUTPUT_DIR)/JTwork \ -jdk:$(TESTJAVA) \ -Xbootclasspath/p:$(TESTBOOTCLASSPATH) \ $(JAVA_TOOL_OPTIONS:%=-vmoption:%) \ $(JAVA_ARGS:%=-vmoption:%) \ $(TESTDIRS)# Bundle up the results$(JPRT_ARCHIVE_BUNDLE): FRC @rm -f $@ @mkdir -p $(@D) ( cd $(TEST_OUTPUT_DIR) && zip -q -r $@ . )# Cleanupclean: rm -f -r $(TEST_OUTPUT_DIR) rm -f $(JPRT_ARCHIVE_BUNDLE)# Used to force a target rules to runFRC:# Phony targets (e.g. these are not filenames).PHONY: all tests clean check