Skip to content
This repository has been archived by the owner. It is now read-only.
Permalink
Browse files
Automatic merge of jdk:master into master
  • Loading branch information
duke committed Mar 17, 2021
2 parents ee110fc + d2144a5 commit e212085be23c5ac9e375baa40199907e3d9b2aad
Showing with 1,022 additions and 922 deletions.
  1. +45 −87 make/modules/java.desktop/lib/Awt2dLibraries.gmk
  2. +1 −1 src/hotspot/cpu/aarch64/assembler_aarch64.hpp
  3. +0 −7 src/hotspot/cpu/aarch64/c1_LIRAssembler_aarch64.cpp
  4. +2 −3 src/hotspot/cpu/aarch64/jniTypes_aarch64.hpp
  5. +0 −26 src/hotspot/cpu/aarch64/macroAssembler_aarch64.hpp
  6. +1 −7 src/hotspot/cpu/arm/c1_LIRAssembler_arm.cpp
  7. +2 −3 src/hotspot/cpu/arm/jniTypes_arm.hpp
  8. +0 −7 src/hotspot/cpu/ppc/c1_LIRAssembler_ppc.cpp
  9. +2 −3 src/hotspot/cpu/ppc/jniTypes_ppc.hpp
  10. +1 −7 src/hotspot/cpu/s390/c1_LIRAssembler_s390.cpp
  11. +4 −8 src/hotspot/cpu/s390/jniTypes_s390.hpp
  12. +0 −7 src/hotspot/cpu/x86/c1_LIRAssembler_x86.cpp
  13. +5 −1 src/hotspot/cpu/x86/gc/shenandoah/shenandoahBarrierSetAssembler_x86.cpp
  14. +2 −3 src/hotspot/cpu/x86/jniTypes_x86.hpp
  15. +2 −3 src/hotspot/cpu/zero/jniTypes_zero.hpp
  16. +1 −2 src/hotspot/share/c1/c1_GraphBuilder.cpp
  17. +2 −3 src/hotspot/share/c1/c1_Instruction.cpp
  18. +2 −4 src/hotspot/share/c1/c1_Instruction.hpp
  19. +0 −2 src/hotspot/share/c1/c1_LIR.cpp
  20. +1 −11 src/hotspot/share/c1/c1_LIR.hpp
  21. +0 −3 src/hotspot/share/c1/c1_LIRAssembler.cpp
  22. +1 −5 src/hotspot/share/c1/c1_LIRGenerator.cpp
  23. +2 −3 src/hotspot/share/c1/c1_LinearScan.cpp
  24. +0 −4 src/hotspot/share/c1/c1_Runtime1.cpp
  25. +0 −5 src/hotspot/share/c1/c1_Runtime1.hpp
  26. +1 −1 src/hotspot/share/classfile/classListParser.cpp
  27. +1 −1 src/hotspot/share/classfile/javaClasses.cpp
  28. +1 −1 src/hotspot/share/classfile/lambdaFormInvokers.cpp
  29. +7 −7 src/hotspot/share/classfile/systemDictionary.cpp
  30. +11 −9 src/hotspot/share/classfile/systemDictionaryShared.cpp
  31. +5 −1 src/hotspot/share/gc/shenandoah/c1/shenandoahBarrierSetC1.cpp
  32. +11 −6 src/hotspot/share/gc/shenandoah/c2/shenandoahSupport.cpp
  33. +0 −6 src/hotspot/share/gc/shenandoah/shenandoahClosures.hpp
  34. +0 −7 src/hotspot/share/gc/shenandoah/shenandoahClosures.inline.hpp
  35. +25 −32 src/hotspot/share/gc/shenandoah/shenandoahConcurrentGC.cpp
  36. +4 −2 src/hotspot/share/gc/shenandoah/shenandoahConcurrentGC.hpp
  37. +2 −4 src/hotspot/share/gc/shenandoah/shenandoahFullGC.cpp
  38. +2 −12 src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp
  39. +4 −2 src/hotspot/share/gc/shenandoah/shenandoahHeap.hpp
  40. +1 −1 src/hotspot/share/gc/shenandoah/shenandoahHeap.inline.hpp
  41. +1 −0 src/hotspot/share/gc/shenandoah/shenandoahNMethod.inline.hpp
  42. +3 −2 src/hotspot/share/gc/shenandoah/shenandoahPhaseTimings.hpp
  43. +0 −2 src/hotspot/share/gc/shenandoah/shenandoahRootVerifier.cpp
  44. +6 −2 src/hotspot/share/gc/shenandoah/shenandoahUnload.cpp
  45. +1 −0 src/hotspot/share/gc/shenandoah/shenandoahUtils.hpp
  46. +5 −0 src/hotspot/share/gc/shenandoah/shenandoahVMOperations.cpp
  47. +11 −0 src/hotspot/share/gc/shenandoah/shenandoahVMOperations.hpp
  48. +14 −2 src/hotspot/share/gc/shenandoah/shenandoahVerifier.cpp
  49. +3 −0 src/hotspot/share/gc/shenandoah/shenandoahVerifier.hpp
  50. +26 −19 src/hotspot/share/interpreter/zero/bytecodeInterpreter.cpp
  51. +6 −6 src/hotspot/share/jfr/dcmd/jfrDcmds.cpp
  52. +4 −4 src/hotspot/share/jfr/jni/jfrJavaCall.cpp
  53. +7 −7 src/hotspot/share/jfr/jni/jfrJavaSupport.cpp
  54. +1 −1 src/hotspot/share/jfr/jni/jfrUpcalls.cpp
  55. +1 −1 src/hotspot/share/jfr/recorder/service/jfrRecorderThread.cpp
  56. +1 −1 src/hotspot/share/jfr/support/jfrJdkJfrEvent.cpp
  57. +4 −4 src/hotspot/share/jvmci/jvmciCompilerToVM.cpp
  58. +13 −13 src/hotspot/share/jvmci/jvmciEnv.cpp
  59. +1 −1 src/hotspot/share/jvmci/jvmciRuntime.cpp
  60. +3 −1 src/hotspot/share/memory/arena.cpp
  61. +6 −7 src/hotspot/share/memory/metaspaceShared.cpp
  62. +1 −1 src/hotspot/share/oops/oopsHierarchy.hpp
  63. +8 −20 src/hotspot/share/opto/addnode.cpp
  64. +9 −24 src/hotspot/share/opto/callnode.hpp
  65. +15 −15 src/hotspot/share/opto/cfgnode.cpp
  66. +21 −0 src/hotspot/share/opto/compile.cpp
  67. +1 −0 src/hotspot/share/opto/compile.hpp
  68. +1 −1 src/hotspot/share/opto/convertnode.cpp
  69. +1 −1 src/hotspot/share/opto/escape.cpp
  70. +3 −3 src/hotspot/share/opto/ifnode.cpp
  71. +1 −1 src/hotspot/share/opto/loopTransform.cpp
  72. +2 −2 src/hotspot/share/opto/loopnode.cpp
  73. +1 −1 src/hotspot/share/opto/loopopts.cpp
  74. +3 −3 src/hotspot/share/opto/macro.cpp
  75. +9 −13 src/hotspot/share/opto/memnode.cpp
  76. +8 −8 src/hotspot/share/opto/mulnode.cpp
  77. +9 −4 src/hotspot/share/opto/node.cpp
  78. +4 −3 src/hotspot/share/opto/node.hpp
  79. +50 −28 src/hotspot/share/opto/phaseX.cpp
  80. +6 −4 src/hotspot/share/opto/phaseX.hpp
  81. +1 −1 src/hotspot/share/opto/postaloc.cpp
  82. +2 −8 src/hotspot/share/opto/subnode.cpp
  83. +14 −10 src/hotspot/share/opto/subtypenode.cpp
  84. +10 −0 src/hotspot/share/opto/vectornode.cpp
  85. +50 −30 src/hotspot/share/opto/vectornode.hpp
  86. +3 −3 src/hotspot/share/prims/jni.cpp
  87. +2 −2 src/hotspot/share/prims/stackwalk.cpp
  88. +1 −1 src/hotspot/share/runtime/handles.hpp
  89. +2 −2 src/hotspot/share/runtime/javaCalls.cpp
  90. +5 −20 src/hotspot/share/runtime/javaCalls.hpp
  91. +1 −1 src/hotspot/share/runtime/statSampler.cpp
  92. +1 −0 src/hotspot/share/runtime/vmOperation.hpp
  93. +1 −1 src/hotspot/share/services/attachListener.cpp
  94. +2 −2 src/hotspot/share/services/diagnosticCommand.cpp
  95. +1 −1 src/hotspot/share/services/diagnosticFramework.cpp
  96. +1 −1 src/hotspot/share/services/gcNotifier.cpp
  97. +1 −1 src/hotspot/share/services/memoryManager.cpp
  98. +1 −1 src/hotspot/share/services/memoryPool.cpp
  99. +5 −0 src/hotspot/share/utilities/globalDefinitions.hpp
  100. +10 −12 src/java.base/share/classes/java/lang/invoke/LambdaForm.java
  101. +2 −14 src/java.base/share/classes/java/util/jar/JarInputStream.java
  102. +0 −6 src/java.base/share/classes/jdk/internal/javac/PreviewFeature.java
  103. +9 −36 src/java.base/share/classes/sun/net/ftp/impl/FtpClient.java
  104. +2 −8 src/java.base/share/classes/sun/security/tools/keytool/Main.java
  105. +1 −1 src/java.desktop/macosx/native/libawt_lwawt/awt/a11y/StaticTextAccessibility.h
  106. +1 −1 src/java.desktop/macosx/native/libawt_lwawt/awt/a11y/StaticTextAccessibility.m
  107. +0 −2 src/java.desktop/share/classes/sun/font/FontManagerNativeLibrary.java
  108. +4 −14 src/java.management/share/classes/javax/management/loading/MLet.java
  109. +1 −1 src/java.naming/share/classes/com/sun/jndi/ldap/LdapSchemaParser.java
  110. +5 −13 src/jdk.compiler/share/classes/com/sun/tools/sjavac/CopyFile.java
  111. +2 −2 src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/CommandProcessor.java
  112. +9 −5 src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/HotSpotAgent.java
  113. +6 −1 src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/tools/PMap.java
  114. +9 −3 src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/tools/PStack.java
  115. +17 −1 src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/tools/Tool.java
  116. +3 −11 src/jdk.jfr/share/classes/jdk/jfr/internal/instrument/JIClassInstrumentation.java
  117. +1 −1 src/jdk.jpackage/linux/classes/jdk/jpackage/internal/LinuxAppImageBuilder.java
  118. BIN src/jdk.jpackage/linux/classes/jdk/jpackage/internal/resources/{java32.png → JavaApp.png}
  119. +16 −6 src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/MacAppBundler.java
  120. +84 −45 src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/MacAppImageBuilder.java
  121. +7 −8 src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/MacBaseInstallerBundler.java
  122. +1 −1 src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/MacDmgBundler.java
  123. +69 −26 src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/MacPkgBundler.java
  124. +2 −2 src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/resources/Info-lite.plist.template
  125. BIN src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/resources/JavaApp.icns
  126. +4 −3 src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/resources/MacResources.properties
  127. +2 −2 src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/resources/MacResources_ja.properties
  128. +2 −2 src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/resources/MacResources_zh_CN.properties
  129. BIN src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/resources/java.icns
  130. +11 −0 src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/resources/product-def.plist
  131. +18 −0 src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/resources/sandbox.plist
  132. +8 −0 src/jdk.jpackage/share/classes/jdk/jpackage/internal/Arguments.java
  133. +3 −0 src/jdk.jpackage/share/classes/jdk/jpackage/internal/ValidOptions.java
  134. +11 −3 src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/HelpResources.properties
  135. +13 −1 src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/HelpResources_ja.properties
  136. +13 −1 src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/HelpResources_zh_CN.properties
  137. +1 −1 src/jdk.jpackage/windows/classes/jdk/jpackage/internal/WindowsAppImageBuilder.java
  138. BIN src/jdk.jpackage/windows/classes/jdk/jpackage/internal/resources/{java48.ico → JavaApp.ico}
  139. +2 −6 src/jdk.zipfs/share/classes/jdk/nio/zipfs/ZipPath.java
  140. +26 −0 test/hotspot/jtreg/gc/shenandoah/TestReferenceRefersToShenandoah.java
  141. +102 −0 test/hotspot/jtreg/gc/shenandoah/TestReferenceShortcutCycle.java
  142. +4 −13 test/hotspot/jtreg/vmTestbase/vm/mlvm/indy/stress/gc/lotsOfCallSites/Test.java
  143. +0 −68 test/hotspot/jtreg/vmTestbase/vm/mlvm/share/WhiteBoxHelper.java
  144. +0 −2 test/jdk/ProblemList.txt
  145. +3 −3 test/jdk/tools/jpackage/helpers/jdk/jpackage/test/LauncherIconVerifier.java
  146. +1 −0 test/jdk/tools/jpackage/linux/AppCategoryTest.java
  147. +1 −0 test/jdk/tools/jpackage/linux/LicenseTypeTest.java
  148. +1 −0 test/jdk/tools/jpackage/linux/LinuxBundleNameTest.java
  149. +1 −0 test/jdk/tools/jpackage/linux/MaintainerTest.java
  150. +1 −0 test/jdk/tools/jpackage/linux/ReleaseTest.java
  151. +1 −0 test/jdk/tools/jpackage/macosx/MacFileAssociationsTest.java
  152. +1 −0 test/jdk/tools/jpackage/macosx/SigningAppImageTest.java
  153. +1 −0 test/jdk/tools/jpackage/macosx/SigningPackageTest.java
  154. +1 −0 test/jdk/tools/jpackage/share/EmptyFolderPackageTest.java
  155. +1 −0 test/jdk/tools/jpackage/share/EmptyFolderTest.java
  156. +1 −0 test/jdk/tools/jpackage/windows/WinDirChooserTest.java
  157. +1 −0 test/jdk/tools/jpackage/windows/WinInstallerUiTest.java
  158. +1 −0 test/jdk/tools/jpackage/windows/WinShortcutPromptTest.java
@@ -432,92 +432,49 @@ endif

###########################################################################


ifeq ($(USE_EXTERNAL_HARFBUZZ), true)
LIBHARFBUZZ_LIBS := $(HARFBUZZ_LIBS)
LIBFONTMANAGER_EXTRA_SRC =
BUILD_LIBFONTMANAGER_FONTLIB += $(LIBHARFBUZZ_LIBS)
else

# This is better than adding EXPORT_ALL_SYMBOLS
ifneq ($(filter $(TOOLCHAIN_TYPE), gcc clang), )
HARFBUZZ_CFLAGS += -DHB_EXTERN=__attribute__\(\(visibility\(\"default\"\)\)\)
else ifeq ($(TOOLCHAIN_TYPE), microsoft)
HARFBUZZ_CFLAGS += -DHB_EXTERN=__declspec\(dllexport\)
endif

ifeq ($(call isTargetOs, windows), false)
HARFBUZZ_CFLAGS += -DGETPAGESIZE -DHAVE_MPROTECT -DHAVE_PTHREAD \
-DHAVE_SYSCONF -DHAVE_SYS_MMAN_H -DHAVE_UNISTD_H \
-DHB_NO_PRAGMA_GCC_DIAGNOSTIC
endif
ifeq ($(call isTargetOs, linux macosx), true)
HARFBUZZ_CFLAGS += -DHAVE_INTEL_ATOMIC_PRIMITIVES
endif
ifeq ($(call isTargetOs, macosx), true)
HARFBUZZ_CFLAGS += -DHAVE_CORETEXT
endif
ifeq ($(call isTargetOs, macosx), false)
LIBHARFBUZZ_EXCLUDE_FILES += libharfbuzz/hb-coretext.cc
endif
# hb-ft.cc is not presently needed, and requires freetype 2.4.2 or later.
LIBHARFBUZZ_EXCLUDE_FILES += libharfbuzz/hb-ft.cc

LIBHARFBUZZ_CFLAGS += $(HARFBUZZ_CFLAGS)

# For use by libfontmanager:
ifeq ($(call isTargetOs, windows), true)
LIBHARFBUZZ_LIBS := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libharfbuzz/harfbuzz.lib
else
LIBHARFBUZZ_LIBS := -lharfbuzz
endif

LIBHARFBUZZ_EXTRA_HEADER_DIRS := \
libharfbuzz/hb-ucdn \
#

LIBHARFBUZZ_OPTIMIZATION := HIGH
# Early re-canonizing has to be disabled to workaround an internal XlC compiler error
# when building libharfbuzz
ifeq ($(call isTargetOs, aix), true)
LIBHARFBUZZ_CFLAGS += -qdebug=necan
endif

LIBHARFBUZZ_CFLAGS += $(X_CFLAGS) -DLE_STANDALONE -DHEADLESS

$(eval $(call SetupJdkLibrary, BUILD_LIBHARFBUZZ, \
NAME := harfbuzz, \
EXCLUDE_FILES := $(LIBHARFBUZZ_EXCLUDE_FILES), \
TOOLCHAIN := TOOLCHAIN_LINK_CXX, \
CFLAGS := $(CFLAGS_JDKLIB) $(LIBHARFBUZZ_CFLAGS), \
CXXFLAGS := $(CXXFLAGS_JDKLIB) $(LIBHARFBUZZ_CFLAGS), \
OPTIMIZATION := $(LIBHARFBUZZ_OPTIMIZATION), \
CFLAGS_windows = -DCC_NOEX, \
EXTRA_HEADER_DIRS := $(LIBHARFBUZZ_EXTRA_HEADER_DIRS), \
WARNINGS_AS_ERRORS_xlc := false, \
DISABLED_WARNINGS_gcc := type-limits missing-field-initializers strict-aliasing, \
DISABLED_WARNINGS_CXX_gcc := reorder delete-non-virtual-dtor strict-overflow \
maybe-uninitialized class-memaccess, \
DISABLED_WARNINGS_clang := unused-value incompatible-pointer-types \
LIBFONTMANAGER_EXTRA_SRC = libharfbuzz

ifeq ($(call isTargetOs, windows), false)
HARFBUZZ_CFLAGS += -DGETPAGESIZE -DHAVE_MPROTECT -DHAVE_PTHREAD \
-DHAVE_SYSCONF -DHAVE_SYS_MMAN_H -DHAVE_UNISTD_H \
-DHB_NO_PRAGMA_GCC_DIAGNOSTIC
endif
ifeq ($(call isTargetOs, linux macosx), true)
HARFBUZZ_CFLAGS += -DHAVE_INTEL_ATOMIC_PRIMITIVES
endif
ifeq ($(call isTargetOs, macosx), true)
HARFBUZZ_CFLAGS += -DHAVE_CORETEXT
endif

# Early re-canonizing has to be disabled to workaround an internal XlC compiler error
# when building libharfbuzz
ifeq ($(call isTargetOs, aix), true)
HARFBUZZ_CFLAGS += -qdebug=necan
endif

ifeq ($(call isTargetOs, macosx), false)
LIBFONTMANAGER_EXCLUDE_FILES += libharfbuzz/hb-coretext.cc
endif
# hb-ft.cc is not presently needed, and requires freetype 2.4.2 or later.
LIBFONTMANAGER_EXCLUDE_FILES += libharfbuzz/hb-ft.cc

HARFBUZZ_DISABLED_WARNINGS_gcc := type-limits missing-field-initializers strict-aliasing
HARFBUZZ_DISABLED_WARNINGS_CXX_gcc := reorder delete-non-virtual-dtor strict-overflow \
maybe-uninitialized class-memaccess
HARFBUZZ_DISABLED_WARNINGS_clang := unused-value incompatible-pointer-types \
tautological-constant-out-of-range-compare int-to-pointer-cast \
undef missing-field-initializers range-loop-analysis, \
DISABLED_WARNINGS_microsoft := 4267 4244 4090 4146 4334 4819 4101 4068 4805 4138, \
LDFLAGS := $(LDFLAGS_JDKLIB) \
$(call SET_SHARED_LIBRARY_ORIGIN), \
LDFLAGS_unix := -L$(INSTALL_LIBRARIES_HERE), \
LDFLAGS_aix := -Wl$(COMMA)-berok, \
LIBS := $(BUILD_LIBHARFBUZZ), \
LIBS_unix := $(LIBM) $(LIBCXX), \
LIBS_macosx := -framework CoreText -framework CoreFoundation -framework CoreGraphics, \
LIBS_windows := user32.lib, \
))

ifeq ($(FREETYPE_TO_USE), bundled)
$(BUILD_LIBHARFBUZZ): $(BUILD_LIBFREETYPE)
endif
undef missing-field-initializers range-loop-analysis
HARFBUZZ_DISABLED_WARNINGS_microsoft := 4267 4244 4090 4146 4334 4819 4101 4068 4805 4138

TARGETS += $(BUILD_LIBHARFBUZZ)
LIBFONTMANAGER_CFLAGS += $(HARFBUZZ_CFLAGS)

endif

###########################################################################

LIBFONTMANAGER_EXTRA_HEADER_DIRS := \
libharfbuzz \
@@ -528,10 +485,10 @@ LIBFONTMANAGER_EXTRA_HEADER_DIRS := \
libawt/java2d/loops \
#

LIBFONTMANAGER_CFLAGS += $(LIBFREETYPE_CFLAGS) $(HARFBUZZ_FLAGS)
BUILD_LIBFONTMANAGER_FONTLIB += $(LIBHARFBUZZ_LIBS) $(LIBFREETYPE_LIBS)
LIBFONTMANAGER_CFLAGS += $(LIBFREETYPE_CFLAGS)
BUILD_LIBFONTMANAGER_FONTLIB += $(LIBFREETYPE_LIBS)

LIBFONTMANAGER_OPTIMIZATION := HIGH
LIBFONTMANAGER_OPTIMIZATION := HIGHEST

ifeq ($(call isTargetOs, windows), true)
LIBFONTMANAGER_EXCLUDE_FILES += X11FontScaler.c \
@@ -569,25 +526,26 @@ $(eval $(call SetupJdkLibrary, BUILD_LIBFONTMANAGER, \
OPTIMIZATION := $(LIBFONTMANAGER_OPTIMIZATION), \
CFLAGS_windows = -DCC_NOEX, \
EXTRA_HEADER_DIRS := $(LIBFONTMANAGER_EXTRA_HEADER_DIRS), \
EXTRA_SRC := $(LIBFONTMANAGER_EXTRA_SRC), \
WARNINGS_AS_ERRORS_xlc := false, \
DISABLED_WARNINGS_gcc := $(HARFBUZZ_DISABLED_WARNINGS_gcc), \
DISABLED_WARNINGS_CXX_gcc := $(HARFBUZZ_DISABLED_WARNINGS_CXX_gcc), \
DISABLED_WARNINGS_clang := $(HARFBUZZ_DISABLED_WARNINGS_clang), \
DISABLED_WARNINGS_microsoft := $(HARFBUZZ_DISABLED_WARNINGS_microsoft), \
LDFLAGS := $(subst -Xlinker -z -Xlinker defs,, \
$(subst -Wl$(COMMA)-z$(COMMA)defs,,$(LDFLAGS_JDKLIB))) $(LDFLAGS_CXX_JDK) \
$(call SET_SHARED_LIBRARY_ORIGIN), \
LDFLAGS_unix := -L$(INSTALL_LIBRARIES_HERE), \
LDFLAGS_aix := -Wl$(COMMA)-berok, \
LIBS := $(BUILD_LIBFONTMANAGER_FONTLIB), \
LIBS_unix := -lawt -ljava -ljvm $(LIBM) $(LIBCXX), \
LIBS_macosx := -lawt_lwawt, \
LIBS_macosx := -lawt_lwawt -framework CoreText -framework CoreFoundation -framework CoreGraphics, \
LIBS_windows := $(WIN_JAVA_LIB) advapi32.lib user32.lib gdi32.lib \
$(WIN_AWT_LIB), \
))

$(BUILD_LIBFONTMANAGER): $(BUILD_LIBAWT)

ifeq ($(USE_EXTERNAL_HARFBUZZ), false)
$(BUILD_LIBFONTMANAGER): $(BUILD_LIBHARFBUZZ)
endif

ifeq ($(call isTargetOs, macosx), true)
$(BUILD_LIBFONTMANAGER): $(call FindLib, $(MODULE), awt_lwawt)
endif
@@ -2687,7 +2687,7 @@ void mvnw(Register Rd, Register Rm,
* 1xxx xxx 1D/2D, shift = UInt(immh:immb) - 64 \
* (1D is RESERVED) \
*/ \
assert(!isSHR || (isSHR && (shift != 0)), "Zero right shift"); \
guarantee(!isSHR || (isSHR && (shift != 0)), "impossible encoding");\
assert((1 << ((T>>1)+3)) > shift, "Invalid Shift value"); \
int cVal = (1 << (((T >> 1) + 3) + (isSHR ? 1 : 0))); \
int encodedShift = isSHR ? cVal - shift : cVal + shift; \
@@ -2075,13 +2075,6 @@ void LIR_Assembler::ic_call(LIR_OpJavaCall* op) {
add_call_info(code_offset(), op->info());
}


/* vtable-dispatch is not enabled for aarch64 platform*/
void LIR_Assembler::vtable_call(LIR_OpJavaCall* op) {
ShouldNotReachHere();
}


void LIR_Assembler::emit_static_call_stub() {
address call_pc = __ pc();
address stub = __ start_a_stub(call_stub_size());
@@ -66,9 +66,8 @@ class JNITypes : AllStatic {
}

// Oops are stored in native format in one JavaCallArgument slot at *to.
static inline void put_obj(oop from, intptr_t *to) { *(oop *)(to + 0 ) = from; }
static inline void put_obj(oop from, intptr_t *to, int& pos) { *(oop *)(to + pos++) = from; }
static inline void put_obj(oop *from, intptr_t *to, int& pos) { *(oop *)(to + pos++) = *from; }
static inline void put_obj(const Handle& from_handle, intptr_t *to, int& pos) { *(to + pos++) = (intptr_t)from_handle.raw_value(); }
static inline void put_obj(jobject from_handle, intptr_t *to, int& pos) { *(to + pos++) = (intptr_t)from_handle; }

// Floats are stored in native format in one JavaCallArgument slot at *to.
static inline void put_float(jfloat from, intptr_t *to) { *(jfloat *)(to + 0 ) = from; }
@@ -527,32 +527,6 @@ class MacroAssembler: public Assembler {
orr(Vd, T, Vn, Vn);
}

// AdvSIMD shift by immediate.
// These are "user friendly" variants which allow a shift count of 0.
#define WRAP(INSN) \
void INSN(FloatRegister Vd, SIMD_Arrangement T, FloatRegister Vn, int shift) { \
if (shift == 0) { \
SIMD_Arrangement arrange = (T & 1) == 0 ? T8B : T16B; \
Assembler::orr(Vd, arrange, Vn, Vn); \
} else { \
Assembler::INSN(Vd, T, Vn, shift); \
} \
} \

WRAP(shl) WRAP(sshr) WRAP(ushr)
#undef WRAP

#define WRAP(INSN) \
void INSN(FloatRegister Vd, SIMD_Arrangement T, FloatRegister Vn, int shift) { \
if (shift == 0) { \
Assembler::addv(Vd, T, Vd, Vn); \
} else { \
Assembler::INSN(Vd, T, Vn, shift); \
} \
} \

WRAP(usra) WRAP(ssra)
#undef WRAP

public:

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2008, 2020, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2008, 2021, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -1941,12 +1941,6 @@ void LIR_Assembler::ic_call(LIR_OpJavaCall *op) {
add_call_info(code_offset(), op->info());
}


/* vtable-dispatch is not enabled for arm platforms */
void LIR_Assembler::vtable_call(LIR_OpJavaCall* op) {
ShouldNotReachHere();
}

void LIR_Assembler::emit_static_call_stub() {
address call_pc = __ pc();
address stub = __ start_a_stub(call_stub_size());
@@ -62,9 +62,8 @@ class JNITypes : AllStatic {
static inline void put_long(jlong *from, intptr_t *to, int& pos) { put_int2r((jint *) from, to, pos); }

// Oops are stored in native format in one JavaCallArgument slot at *to.
static inline void put_obj(oop from, intptr_t *to) { *(oop *)(to + 0 ) = from; }
static inline void put_obj(oop from, intptr_t *to, int& pos) { *(oop *)(to + pos++) = from; }
static inline void put_obj(oop *from, intptr_t *to, int& pos) { *(oop *)(to + pos++) = *from; }
static inline void put_obj(const Handle& from_handle, intptr_t *to, int& pos) { *(to + pos++) = (intptr_t)from_handle.raw_value(); }
static inline void put_obj(jobject from_handle, intptr_t *to, int& pos) { *(to + pos++) = (intptr_t)from_handle; }

// Floats are stored in native format in one JavaCallArgument slot at *to.
static inline void put_float(jfloat from, intptr_t *to) { *(jfloat *)(to + 0 ) = from; }
@@ -706,13 +706,6 @@ void LIR_Assembler::ic_call(LIR_OpJavaCall* op) {
add_call_info(code_offset(), op->info());
}


/* vtable_call is not enabled for ppc platform */
void LIR_Assembler::vtable_call(LIR_OpJavaCall* op) {
ShouldNotReachHere(); // ic_call is used instead.
}


void LIR_Assembler::explicit_null_check(Register addr, CodeEmitInfo* info) {
ImplicitNullCheckStub* stub = new ImplicitNullCheckStub(code_offset(), info);
__ null_check(addr, stub->entry());
@@ -72,9 +72,8 @@ class JNITypes : AllStatic {
}

// Oops are stored in native format in one JavaCallArgument slot at *to.
static inline void put_obj(oop from, intptr_t *to) { *(oop *)(to + 0 ) = from; }
static inline void put_obj(oop from, intptr_t *to, int& pos) { *(oop *)(to + pos++) = from; }
static inline void put_obj(oop *from, intptr_t *to, int& pos) { *(oop *)(to + pos++) = *from; }
static inline void put_obj(const Handle& from_handle, intptr_t *to, int& pos) { *(to + pos++) = (intptr_t)from_handle.raw_value(); }
static inline void put_obj(jobject from_handle, intptr_t *to, int& pos) { *(to + pos++) = (intptr_t)from_handle; }

// Floats are stored in native format in one JavaCallArgument slot at *to.
static inline void put_float(jfloat from, intptr_t *to) { *(jfloat *)(to + 0 ) = from; }
@@ -1,5 +1,5 @@
/*
* Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2016, 2021, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2016, 2019 SAP SE. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
@@ -496,7 +496,6 @@ void LIR_Assembler::align_call(LIR_Code code) {
case lir_dynamic_call:
offset += NativeCall::call_far_pcrelative_displacement_offset;
break;
case lir_virtual_call: // currently, sparc-specific for niagara
default: ShouldNotReachHere();
}
if ((offset & (NativeCall::call_far_pcrelative_displacement_alignment-1)) != 0) {
@@ -533,11 +532,6 @@ void LIR_Assembler::ic_call(LIR_OpJavaCall* op) {
call(op, relocInfo::none);
}

// not supported
void LIR_Assembler::vtable_call(LIR_OpJavaCall* op) {
ShouldNotReachHere();
}

void LIR_Assembler::move_regs(Register from_reg, Register to_reg) {
if (from_reg != to_reg) __ z_lgr(to_reg, from_reg);
}
@@ -73,16 +73,12 @@ class JNITypes : AllStatic {
}

// Oops are stored in native format in one JavaCallArgument slot at *to.
static inline void put_obj(oop from, intptr_t *to) {
*(oop*) to = from;
static inline void put_obj(const Handle& from_handle, intptr_t *to, int& pos) {
*(to + pos++) = (intptr_t)from_handle.raw_value();
}

static inline void put_obj(oop from, intptr_t *to, int& pos) {
*(oop*) (to + pos++) = from;
}

static inline void put_obj(oop *from, intptr_t *to, int& pos) {
*(oop*) (to + pos++) = *from;
static inline void put_obj(jobject from_handle, intptr_t *to, int& pos) {
*(to + pos++) = (intptr_t)from_handle;
}

// Floats are stored in native format in one JavaCallArgument slot at *to.
@@ -2884,7 +2884,6 @@ void LIR_Assembler::align_call(LIR_Code code) {
case lir_icvirtual_call:
offset += NativeCall::displacement_offset + NativeMovConstReg::instruction_size;
break;
case lir_virtual_call: // currently, sparc-specific for niagara
default: ShouldNotReachHere();
}
__ align(BytesPerWord, offset);
@@ -2907,12 +2906,6 @@ void LIR_Assembler::ic_call(LIR_OpJavaCall* op) {
}


/* Currently, vtable-dispatch is only enabled for sparc platforms */
void LIR_Assembler::vtable_call(LIR_OpJavaCall* op) {
ShouldNotReachHere();
}


void LIR_Assembler::emit_static_call_stub() {
address call_pc = __ pc();
address stub = __ start_a_stub(call_stub_size());
@@ -342,7 +342,11 @@ void ShenandoahBarrierSetAssembler::load_reference_barrier(MacroAssembler* masm,
#endif

Address gc_state(thread, in_bytes(ShenandoahThreadLocalData::gc_state_offset()));
__ testb(gc_state, ShenandoahHeap::HAS_FORWARDED);
int flags = ShenandoahHeap::HAS_FORWARDED;
if (!is_strong) {
flags |= ShenandoahHeap::WEAK_ROOTS;
}
__ testb(gc_state, flags);
__ jcc(Assembler::zero, heap_stable);

Register tmp1 = noreg, tmp2 = noreg;
@@ -82,9 +82,8 @@ class JNITypes : AllStatic {
#endif // AMD64

// Oops are stored in native format in one JavaCallArgument slot at *to.
static inline void put_obj(oop from, intptr_t *to) { *(oop *)(to + 0 ) = from; }
static inline void put_obj(oop from, intptr_t *to, int& pos) { *(oop *)(to + pos++) = from; }
static inline void put_obj(oop *from, intptr_t *to, int& pos) { *(oop *)(to + pos++) = *from; }
static inline void put_obj(const Handle& from_handle, intptr_t *to, int& pos) { *(to + pos++) = (intptr_t)from_handle.raw_value(); }
static inline void put_obj(jobject from_handle, intptr_t *to, int& pos) { *(to + pos++) = (intptr_t)from_handle; }

// Floats are stored in native format in one JavaCallArgument slot at *to.
static inline void put_float(jfloat from, intptr_t *to) { *(jfloat *)(to + 0 ) = from; }

0 comments on commit e212085

Please sign in to comment.