IcedTea 2.5.0 for OpenJDK 7 Released: POWER to the People!

Andïï gnu_andrew at
Sat Jun 14 07:05:58 UTC 2014

We are pleased to announce the release of IcedTea 2.5.0, "Power to the People"!

The IcedTea project provides a harness to build the source code from
OpenJDK using Free Software build tools, along with additional
features such as the ability to build against system libraries and
support for alternative virtual machines and architectures beyond
those supported by OpenJDK.

This release updates our OpenJDK 7 support with the first release of
the 2.5.x series, based on OpenJDK u60.

If you find an issue with the release, please report it to our bug
database ( under the appropriate
component. Development discussion takes place on the
distro-pkg-dev at mailing list and patches are always

Full details of the release can be found below.

What's New?
New in release 2.5.0 (2014-06-13):

* OpenJDK
  - S5049299: (process) Use posix_spawn, not fork, on S10 to avoid
swap exhaustion
  - S6412968: CMS: Long initial mark pauses
  - S6571600: JNI use results in UnsatisfiedLinkError looking for
  - S6889597: TEST_BUG: javax/management/remote/mandatory/
test should be updated in jdk7 Workspace
  - S6900441: PlatformEvent.park(millis) on Linux could still be
affected by changes to the time-of-day clock
  - S6989981: jstack causes "fatal error: ExceptionMark destructor
expects no pending exceptions"
  - S7074436: (sc) SocketChannel can do short gathering writes when
channel configured blocking (win)
  - S7123493: (proxy) Proxy.getProxyClass doesn't scale under high load
  - S7124232: [TEST_BUG] [macosx] JSplitPane has wrong divider location
  - S7124314: [TEST_BUG] [macosx] Aqua LAF: JTree doesn't select
element by keyboards left and right keys
  - S7124320: [TEST_BUG] [macosx] JComboBox doesn't change selection
on mouse over
  - S7124338: [macosx] Selection lost if a selected item removed from
a java.awt.List
  - S7129133: [macosx] Accelerators are displayed as Meta instead of
the Command symbol
  - S7131153: GetDC called way too many times - causes bad performance.
  - S7133122: SA throws
sun.jvm.hotspot.debugger.UnmappedAddressException when it should not
  - S7133146: [macosx]
closed/javax/swing/JInternalFrame/4193219/IconCoord fails on MacOS
  - S7133154: [TEST_BUG] [macosx]
closed/javax/swing/JInternalFrame/4251301/ fails on
  - S7145569: G1: optimize nmethods scanning
  - S7147084: (process) appA hangs when read output stream of appB
which starts appC that runs forever
  - S7171591: getDefaultScopeID() in
src/solaris/native/java/net/net_util_md.c should return a value
  - S7173464: Clipboard.getAvailableDataFlavors: Comparison method
violates contract
  - S7176574: sun/security/krb5/auto/ failed with solaris-i586
  - S7186887: Test can fail on a slow machine
  - S7187554: JSR 292: JVMTI PopFrame needs to handle appendix arguments
  - S7190349: [macosx] Text (Label) is incorrectly drawn with a rotated g2d
  - S7191817: -XX:+UseSerialGC -XX:+UseLargePages crashes with SIGFPE on MacOS X
  - S7194607: fails after
JSR-292 merge
  - S7197210: java/lang/invoke/ failing on armsflt.
  - S7199674: (props) user.home property does not return an accessible
location in sandboxed environment [macosx]
  - S8003253: TEST_BUG:
java/nio/channels/AsynchronousChannelGroup/ hang
intermittently [win]
  - S8003262: reverse translation required changes in xalan resource bundles
  - S8003285: TEST_BUG:
java/nio/channels/AsynchronousChannelGroup/ fails again
  - S8003895: java/nio/channels/AsynchronousChannelGroup/
failing again [win64]
  - S8004032: [TEST_BUG] [macosx] There is no effect when double
clicking on the Icon, after right clicking on the Icon and the Icon
  - S8004051: assert(_oprs_len[mode] < maxNumberOfOperands) failed:
array overflow
  - S8004476: XSLT Extension Functions Don't Work in WebStart
  - S8005128: JSR 292: the mlvm redefineClassInBootstrap test crashes
in ConstantPool::compare_entry_to
  - S8006395: Race in async socket close on Linux
  - S8006542: JSR 292: the VM_RedefineClasses::append_entry() must
support invokedynamic entry kinds
  - S8006546: JSR 292: typos in the ConstantPool::copy_cp_impl()
  - S8006628: NEED_TEST for JDK-8002870
  - S8006731: JSR 292: the
VM_RedefineClasses::rewrite_cp_refs_in_method() must support
  - S8007037: JSR 292: the VM_RedefineClasses::append_entry() should
do cross-checks with indy operands
  - S8007454: (process) SetHandleInformation parameters DWORD (not BOOLEAN)
  - S8008118: (process) Possible null pointer dereference in
  - S8008511: JSR 292: MemberName vmtarget refs to methods must be
updated at class redefinition
  - S8008733: Psr:perf:osb performance regression (18%) in wss_bodyenc
  - S8009062: poor performance of JNI AttachCurrentThread after fix for 7017193
  - S8009213: sun/management/jdp/ fails with exit code 1
  - S8009222: java.lang.IllegalArgumentException: not invocable, no
method type when attempting to get getter method handle for a static
  - S8011194: Apps launched via double-clicked .jars have
file.encoding value of US-ASCII on Mac OS X
  - S8011343: Add new flag for verifying the heap during startup
  - S8011944: Sort fails with ArrayIndexOutOfBoundsException
  - S8011955: Lunar screen reader crashes intermittently in
  - S8012244: java/net/Socket/asyncClose/ fails
intermittently on Windows
  - S8012326: Deadlock occurs when Charset.availableCharsets() is
called by several threads at the same time
  - S8012615: Realm.getRealmsList returns realms list in wrong
  - S8012925: [parfait] Missing return value in
  - S8013132: Add a flag to turn off the output of the verbose verification code
  - S8013895: G1: G1SummarizeRSetStats output on Linux needs improvement
  - S8013945: CMS fatal error: must own lock MemberNameTable_lock
  - S8014052: JSR292: assert(end_offset == next_offset) failed: matched ending
  - S8014078: G1: improve remembered set summary information by
providing per region type information
  - S8014240: G1: Add remembered set size information to output of
  - S8014288: perf regression in nashorn JDK-8008448.js test after
8008511 changes
  - S8014394: (fs) WatchService failing when watching \\server\$d
  - S8014460: Need to check for non-empty EXT_LIBS_PATH before using it
  - S8014555: G1: Memory ordering problem with Conc refinement and card marking
  - S8015092: SchemaFactory cannot parse schema if whitespace added
within patterns in Selector XPath expression
  - S8015243: SchemaFactory does not catch enum. value that is not in
the value space of the base type, anyURI
  - S8015244: G1: Verification after a full GC is incorrectly placed.
  - S8015599: [TEST_BUG] [macosx] Test
closed/javax/swing/Popup/ fails since JDK 8
b75 on MacOSX
  - S8015600: [TEST_BUG] [macosx] Test
fails since JDK 8 b75 on MacOSX
  - S8016018: Typo in AbstractStringBuilder#indexOf and #lastIndexOf
  - S8016110: Japanese char (MS932) 0x5C cannot be used as an argument
when quoted
  - S8016271: wsimport -clientjar does not create portable jars on
Windows due to hardcoded backslash
  - S8016328: Regression : Javadoc i18n regression caused by fix for 8012375
  - S8016500: Unlocalized warnings.
  - S8017180: [macosx] [TEST_BUG] alt-key doesn't work on macos for menu
  - S8017195: Introduce option to setKeepAlive parameter on CORBA sockets
  - S8017456: [TEST_BUG]
java/awt/DataFlavor/MissedHtmlAndRtfBug/MissedHtmlAndRtfBug.html: test
frames remain after test execution
  - S8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
  - S8017779: java/net/Authenticator/ fails
  - S8019184: MethodHandles.catchException() fails when methods have 8
args + varargs
  - S8019389: SA-JDI JSR292:
sun.jvm.hotspot.jdi.StackFrame.thisObject() throws
sun.jvm.hotspot.utilities.AssertionFailure: sanity check
  - S8019396: SA-JDI: OSThread class initialization throws an exception
  - S8019853: Break logging and AWT circular dependency
  - S8020123: Test gc/g1/ fails
with "test result: Error. No action after @build"
  - S8020191: System.getProperty("") returns "Windows NT
(unknown)" on Windows 8.1
  - S8020530: Non heap memory size calculated incorrectly
  - S8020791: [TESTBUG] runtime/jsig/ failed to compile
native code
  - S8021296: [TESTBUG] fails to find "gcc" and fails
to compile on some Linux releases
  - S8021368: Launch of Java Web Start app fails with
ClassCircularityError exception in 7u25
  - S8021898: Broken JIT compiler optimization for loop unswitching
  - S8021943: FileDialog getFile returns corrupted string after previous setFile
  - S8022213: Intermittent test failures in java/net/URLClassLoader
  - S8022452: Hotspot needs to know about Windows 8.1 and Windows Server 2012 R2
  - S8022507: SIGSEGV at ParMarkBitMap::verify_clear()
  - S8022584: Memory leak in some NetworkInterface methods
  - S8022585: VM crashes when ran with -XX:+PrintInlining
  - S8022993: Convert MAX_UNROLL constant to LoopMaxUnroll C2 flag
  - S8023004: JSR 292: java.lang.RuntimeException: Original target
method was called.
  - S8023130: (process) ProcessBuilder#inheritIO does not work on Windows
  - S8023145: G1: G1CollectedHeap::mark_strong_code_roots() needs to
handle ParallelGCThreads=0
  - S8023472: C2 optimization breaks with G1
  - S8023580: Add jtreg test for 8004051 and 8005722
  - S8023720: (hotspot) setjmp/longjmp changes the process signal mask on OS X
  - S8023786: (jdk) setjmp/longjmp changes the process signal mask on OS X
  - S8023881: IDN.USE_STD3_ASCII_RULES option is too strict to use
Unicode in IDN.toASCII
  - S8023956: Provide a work-around to broken Linux 32 bit "Exec
Shield" using CS for NX emulation (crashing with SI_KERNEL)
  - S8024027: Test sun/misc/IoTrace/ crashes VM
  - S8024163: [macosx] NullPointerException at
javax.swing.TransferHandler$DropHandler.handleDrag since jdk8b93,
  - S8024521: (process) Async close issues with Process InputStream
  - S8024648: 7141246 & 8016131 break Zero port
  - S8024707: TransformerException : item() return null with node list
of length != 1
  - S8024788: (fs) Files.readAllBytes uses FileChannel which may not
be supported by all providers
  - S8024830: SEGV in
  - S8024861: Incomplete token triggers GSS-API NullPointerException
  - S8024876: [TEST_BUG]
javax/xml/jaxp/parsers/8022548/ failed when testbase
dir has read only permissions
  - S8024952: ClassCastException in PlainSocketImpl.accept() when
using custom socketImpl
  - S8025145: [macosx]: java 7 does not recognize tiff image on clipboard
  - S8025204: Intermittent test failure:
  - S8025205: Intermittent test failure:
  - S8025206: Intermittent test failure:
  - S8025207: Intermittent test failure:
  - S8025305: Cleanup CardTableModRefBS usage in G1
  - S8025512: NPE with logging while launching webstart on jre7u40 if
logging is disabled
  - S8025541: G1: assert "assert(thread < _num_vtimes) failed: just
checking" fails when G1ConcRefinementThreads > ParallelGCThreads
  - S8025588: [macosx] Frozen AppKit thread in 7u40
  - S8025713: Syncing indendation/comment/copyright year differences
with upstream projects
  - S8025775: JNI warnings in TryXShmAttach
  - S8025860: new hotspot build - hs24.60-b02
  - S8025861: Set minor version for hotspot in 7u60 to 60 and build
number to b01
  - S8025920: webrev.ksh does not provide any details about changes in zip files
  - S8026293: Schedule part of G1 pre-barrier late
  - S8026404: Logging in Applet can trigger ACE: access denied
("java.lang.RuntimePermission" "modifyThreadGroup")
  - S8026405: javax/xml/ws/clientjar/ failing on JDK
8 nightly aurora test runs
  - S8026486: Significant slowdown due to transparent huge pages
  - S8026502: java/lang/invoke/ fails on all platforms
  - S8026705: [TEST_BUG] java/beans/Introspector/ failed
  - S8026794: Test tools/pack200/ fails while opening
golden.jar.native.IST on linux-ppc(v2)
  - S8026848: -XX:+G1SummarizeRSetStats can result in wrong exit code and crash
  - S8027066: XMLDecoder in java 7 cannot properly deserialize object arrays
  - S8027172: new hotspot build - hs24.60-b03
  - S8027196: Increment minor version of HSx for 7u55 and initialize
the build number
  - S8027351: (ref) Private finalize method invoked in preference to
protected superclass method
  - S8027426: String.toLowerCase incorrectly increases length, if
string contains \u0130 char
  - S8027454: Do not traverse string table during G1 remark when
treating them as strong roots during initial mark
  - S8027476: Improve performance of Stringtable unlink
  - S8027579: new hotspot build - hs24.60-b04
  - S8027756: assert(!hr->isHumongous()) failed: code root in humongous region?
  - S8027839: C1 crashes in Weblogic with G1 enabled
  - S8027840: C2 allows safepoint checks to leak into G1 pre-barriers
  - S8027860: [TEST_BUG] File not closed in
  - S8027973: javax/xml/jaxp/transform/jdk8004476/
hangs (win)
  - S8027997: G1: SPECjbb2013 crashes due to a broken object reference
  - S8028054: com.sun.beans.finder.MethodFinder has unsynchronized
access to a static Map
  - S8028208: (aio) Assertion in clearPendingIoMap when closing at
around time file lock is acquired immediately (win)
  - S8028351: JWS doesn't get authenticated when using kerberos auth proxy
  - S8028391: Make the Min/MaxHeapFreeRatio flags manageable
  - S8028412: AsyncGetCallTrace() is broken on x86 in JDK 7u40
  - S8028520: JVM should not throw VerifyError when a private method
overrides a final method
  - S8028583: Add helper methods to test libraries
  - S8028814: new hotspot build - hs24.60-b06
  - S8029281: Synchronization issues in Logger and LogManager
  - S8029304: JFR broken in 7u train for JDK Linux for ARM or OpenJDK
  - S8029318: Native Windows ccache still reads DES tickets
  - S8029366: ShouldNotReachHere error when creating an array with
component type of void
  - S8029599: JVM crashes on solaris-i586 with -Xverify:all if stack
overflow happens during recursive reflective call
  - S8029903: Add a type safe alternative for working with counter based data
  - S8030061: new hotspot build - hs24.60-b05
  - S8030070: Test java/io/File/ fails due to
unfinished recursion (java.lang.StackOverflowError) when JIT'ed code
(-client,-server) is running
  - S8030655: Regression: 14_01 Security fix 8024306 causes test failures
  - S8030698: Several GUI labels in jconsole need correction
  - S8030813: Signed applet fails to load when CRLs are stored in an
LDAP directory
  - S8030822: (tz) Support tzdata2013i
  - S8031050: (thread) Change Thread initialization so that thread
name is set before invoking SecurityManager
  - S8031394: (sl) Fix exception handling in ServiceLoader
  - S8031462: Fonts with morx tables are broken with latest ICU fixes
  - S8031787: Remove fix JDK-8026887 from 7u60
  - S8031980: Add new j.u.l deadlock test for JDK-8027670 and JDK-8029281
  - S8032013: new hotspot build - hs24.60-b08
  - S8032207: C2: assert(VerifyOops || MachNode::size(ra_) <= (3+1)*4)
failed: bad fixed size
  - S8032740: Need to create SE Embedded Source Bundles in 7 Release
  - S8032771: The flag VerifySilently misses a test case
  - S8032960: Running forms URL throws NullPointerException in Javaconsole.
  - S8032986: new hotspot build - hs24.60-b09
  - S8033294: javac, spurious warning for instanceof operator
  - S8033443: Test8000311 fails after latest changes to parallelize
string and symbol table unlink
  - S8033487: Improve GC option handling
  - S8034181: SIGBUS in SctpChannelImpl receive
  - S8034772: JDK-8028795 brought a specification change to 7u55
release and caused JCK7 signature test failure
  - S8035283: Second phase of branch shortening doesn't account for
loop alignment
  - S8035618: Four api/org_omg/CORBA TCK tests fail under plugin only
  - S8035893: JVM_GetVersionInfo fails to zero structure
  - S8035897: Better memory allocation for file descriptors greater
than 1024 on macosx
  - S8035963: The failed Kerberos tests due to timeouts
  - S8035988: 7u60 l10n resource file translation update 1
  - S8036027: Increment hsx 24.51 build to b04 for 7u51-b34
  - S8036147: Increment hsx 24.55 build to b02 for 7u55-b11
  - S8036584: Review comments from 8035897
  - S8036837: Increment hsx 24.55 build to b03 for 7u55-b12
  - S8036861: Application can't be loaded fine,the save dialog can't show up.
  - S8037012: (tz) Support tzdata2014a
  - S8037340: Linux semaphores to use CLOCK_REALTIME
  - S8037510: CMM Testing: Min/MaxHeapFreeRatio flags should be
manageable through the API
  - S8038306: (tz) Support tzdata2014b
  - S8039097: Some tests fail with NPE since 7u60 b12
* Backports
  - S7103549: Remove dependencies on libjava and libjvm from security libraries
  - S8000204: Memory leak in com/sun/security/auth/module/Unix.c
  - S8000476: Memory Leaks and uninitialized memory access in PKCS11
and other native code
  - S8001579: Cleanup warnings in security native code
  - S8007607: security native code doesn't always use malloc, realloc,
and calloc correctly
  - S8008509: 6588413 changed JNIEXPORT visibility for GCC on HSX,
jdk's jni_md.h needs similar change
  - S8012224: AWT_TopLevels/TopLevelEvents/Automated/WindowIconifyDeiconifyEventsTest02
fails on Ubuntu 12.04 Unity shell
  - S8014307: Memory leak ... security/jgss/wrapper/GSSLibStub.c
  - S8038392, RH1064383: Generating prelink cache breaks JAVA 'jinfo'
utility normal behavior
* Bug fixes
  - Fix implicit function declarations in j2secmod_md.c introduced by 7103549.
  - PR1617: Include defs.make in vm.make so zeroshark.make is included
  - Remove binary files and unlicensed generated files
  - PR1655: Don't add IcedTea-Web jars to bootclasspath
  - Enable CC_INTERP on ppc64
  - Fix Zero following integration of PPC port
  - PR1660: Allow use of system PCSC
  - PR1661: Cleanup COMPILE_AGAINST_SYSCALLS option and allow it to be set false
  - PR1661: Cleanup COMPRESS_JARS option and allow it to be set false
  - PR1661: Cleanup SYSTEM_CUPS option and allow it to be set false
  - PR1661: Cleanup SYSTEM_FONTCONFIG option and allow it to be set false
  - PR1661: Cleanup SYSTEM_GIF option and allow it to be set false
  - PR1661: Cleanup SYSTEM_GIO option and allow it to be set false
  - PR1661: Cleanup SYSTEM_GTK option and allow it to be set false
  - PR1661: Cleanup SYSTEM_JPEG option and allow it to be set false
  - PR1661: Cleanup SYSTEM_LCMS option and allow it to be set false
  - PR1661: Cleanup SYSTEM_PCSC option and allow it to be set false
  - PR1661: Cleanup SYSTEM_PNG option and allow it to be set false
  - PR1664: Ensure all SYSTEM_* options are in
  - Only get CFLAGS/LIBS for libpcsclite if installed
  - Add lost #endif
  - Add new files from 8019229
  - Remove duplicate ElfFuncDescTable code in elfSymbolTable.cpp
  - Remove duplicate ElfFuncDescTable code in elfSymbolTable.hpp
  - PR1699: Support building the SunEC provider with system NSS
  - PR1393: JPEG support in build is broken on non-system-libjpeg builds
  - Fix merge duplication in com.sun.script.javascript.RhinoTopLevel
  - S8041658: Use of -fdevirtualize on macroAssembler_x86.o (via -O2)
with gcc 4.9.0 creates broken VM
  - Extend 8041658 to all files in the HotSpot build.
  - Correct placement of S8041658 fix
  - PR1753: Ant does not respect JAVA_HOME/jdk.home setting
  - PR1757: register_method usage in sharkCompiler.cpp needs to be
adjusted following S7196199
  - PR1781: NSS PKCS11 provider fails to handle multipart AES encryption
  - RH1059925: RFE: Version Java libraries to allow using multiple
Java versions with Linux capabilities enabled
  - RH905128: [CRASH] OpenJDK-1.7.0 while using NSS security provider
and kerberos
  - PR1742: Allow SunEC provider to be built with changes in NSS >= 3.16.1
  - PR1762: Undefined references when building with NSS 3.16.1
  - PR1737: Support prefixed variants of GNU tools used on *BSD systems
  - PR1756: Bootstrap with IcedTea broken
  - PR1758: Support PPC64 JIT on ppc64le
  - PR1763: ppc64 JIT doesn't support class data sharing
  - PR1765: Boot JDK on ppc64le uses differently named arch directory
to final build
  - PR1807: Support Debian/Ubuntu 7 OpenJDK Install as Boot JDK
  - PR1365: Replace hgforest support
  - PR1814: HotSpot URL should be used with --enable-hg
  - PR1371: Provide option to build without debugging
  - PR1827: Support AM_MAINTAINER_MODE
  - PR1830: Drop version requirement for LCMS 2
  - PR1833, RH1022017: Report elliptic curves supported by NSS, not
the SunEC library
  - PR1741: Break PulseAudio provider out into IcedTea-Sound
  - PR1736: AWT loads gtk3 in all the look and feel configurations
  - PR1808: Type-punning Warnings in Demos on PPC
  - PR1835: Missing file in backport of ppc64le JIT support
  - PR1839, G478960: Provide Infinality Support via fontconfig
  - PR729: GTKLookAndFeel should be the system look&feel on all
GNU/Linux desktops
  - PR1843: Fail early if there is no native HotSpot JIT & all other
options are disabled
  - PR1848: Removal of project support leaves trailing '-' in version
* PPC & AIX port
  - Add AIX-specific build instructions to README-ppc.html
  - Added AIX as testing platform for more jtreg tests written in shell-script
  - Added AIX specific build defs file
  - Added AIX to list of operating systems to include in static jli build
  - Added AIX version of classlist
  - Added enumIPv4Interfaces, enumIPv6Interfaces and getMacAddress
implementation for AIX.
  - Added initial AIX version of  copied from
existing Solaris one
  - Added missing B_FALSE and B_TRUE definitions for AIX when building
ec component.
  - Added missing Dlinfo structure for SAP version of hprof_md.c
  - Added section about problems with pre-installed ANT and our
bootstrap JDK on Linux and how to solve them
  - Added UnixOperatingSystem.getTotalPhysicalMemorySize and
getFreePhysicalMemorySize implementation for AIX by facilitating
perfstat APIs.
  - add "<jrepath>/lib/<arch>/jli/" to the runtime library path in the
java launcher for AIX because AIX ld doesn't support $ORIGIN and isn't found otherwise
  - Add libmawt linking for libfontmanager on AIX platform
  - Add memory limit requirements (ulimit) for AIX to README-ppc.html
  - Addon for merge 5851:b717d0d99407 - add missing file AixNativeDispatcher.c
  - Add OS and Compiler information to the VM version string on AIX
  - Add section about the necessity of 'GNU tar' during the build process
  - Add some AIX-specific files which were missing from changeset
  - adlc: do safe call to constant_offset() in debug coding
  - aix: add macros AIX_ONLY and NOT_AIX
  - aix: AIX platform files as required to start up the interpreter.
  - AIX changes to build the complete OpenJDK on a vanilla AIX system
  - aix: fix disclaiming memory.
  - Aix port: add file globalDefinitions_xlc.hpp.
  - aix: remove warnings about memory allocation
  - asm: fix DelayedConstant
  - Basic AIX adaption. With this change the VM can successfully run
'HelloWorld' on AIX
  - Build "fdlibm" without optimizations and with -qfloat=nomaf on AIX
  - C argument in register AND stack slot.
  - Check consistency of the PPC-specific flag 'UseSIGTRAP' with
'ImplicitRangeChecks' and 'ImplicitNullChecks'
  - C-interpreter: add biased locking support
  - C-interpreter: basic fixes
  - C-interpreter: Fix for OSR.
  - C-interpreter: implement bytecode profiling.
  - C-interpreter: implement G1 support
  - C-interpreter: implement support for compressed Oops.
  - C++ interpreter: implement support for early return
  - C-interpreter: improve memory ordering implementation.
  - C-interpreter: memory ordering as required for platforms with weak
memory ordering (PPC)
  - C-interpreter: some diffs I missed before
  - C-interpreter: support for method handles.
  - Corrected incorrect use of ps -e on AIX
  - Disable sctp support for now on AIX platform
  - Disable use of sys/swap.h when building UnixOperatingSystem_md.c on AIX
  - dlopen() on AIX does not support RTLD_NOLOAD, so use RTLD_LZAY to
  - Enable AWT/Swing on AIX
  - Enable awt to build on AIX
  - Enable building jaas library on AIX platform
  - Enabled SoundDefs to build on AIX
  - Enable jdi script based tests to run on AIX.  (fixed issue with
uname -s result not being understood by tests)
  - Enable mannual and Javadoc on AIX platform
  - Enable medialib to build on AIX
  - Enable the build of HotSpot 'CORE' targets from the top-level
makefile by setting CORE_BUILD=true.
  - Enable Tls operations in jdwp socket transport module for AIX platform
  - Expand conditional include in several more source files to not include
  - Expanded check for which wait.h to use. Changed so on AIX
sys/wait.h is used.
  - Expanded platform choice logic to include AIX when deciding to
create the MB macro.
  - Explicitly defined ARCH_DATA_MODEL for AIX to be 64
  - Export 'USE_PTHREADS' on Linux trough CPPFLAGS to fix the build
because java_md_solinux.c now only relies on 'USE_PTHREADS' beeing
  - Extended BSD remapping of special 64 bit directory function names
to generic versions to now apply to AIX.
  - Extended decision to use pthreads in java_md_solinux to include
specific use of USE_PTHREADS define
  - Extended existing ifdef to cover AIX so that npt does not include link.h
  - Extended find zone info functionaility to compile on AIX
  - Extend existing Solaris behaviour to cover AIX and treat empty TZ
envvar same as no TZ envvar
  - Extend Load and Store nodes to know about memory ordering.
  - fastdebug build: images step fails building installer binaries
  - Fix aix build error.
  - Fix broken AIX build
  - Fix build on Linux with 64kb default page size
  - Fix build with gcc 4.7
  - Fix calls to the LoadLNode constructor with the Load semantics
argument in the wrong position.
  - Fixed from 8 port moved to 7.
  - Fixed JTreg failure from java/util/ResourceBundle/Control/
  - Fixed memory handling/bookkeeping of mmaped memory on AIX
  - Fixed sun/nio/ch implementation on AIX
  - Fix handling of scalar replaced objects.
  - Fix IA64 preprocessor conditionals on AIX!!!
  - Fix iconv encoding problem on AIX < 7.1 in SplashConvertStringAlloc
  - Fix JTreg failure from
  - Fix JTreg failure from java/nio/charset/spi/
  - Fix native multicast sockets implementation on AIX
  - Fix native stack traces in hs_err files on Linux/PPC64
  - Fix setting of SO_REUSEADDR socket option on AIX (where the socket
option is called SO_REUSEPORT)
  - Fix small mistake introduced by the port which breaks the Windows build
  - Fix typo in change 'Fix native stack traces in hs_err files..'
  - Fix usage of feature detection on ppc for fsqrt instruction. Also
guarantee no wrong instructions are used.
  - Fix -Xcheck:jni on AIX
  - Fix Xrender backend on  64-bit Big-endian architectures
  - Further format fixes after removing ppc_ prefixes.
  - G1: Fix problem with nonvolatile field
  - G1: Port C-interpreter to support G1.
  - gethostbyname_r and gethostbyaddr_r have got different syntax on
AIX, this patch added the support of host entry getting.
  - Implement AttachListener for AIX
  - Implemented a no-op version of getPlatformTimeZoneID() for AIX
  - Implemented os::thread_cpu_time for AIX
  - Implement printing CodeComments in stubs.
  - Implement printing CodeComments in stubs: fix product build.
  - Implement support for the "System V Print Subsystem" on AIX
  - Implement workaround for I/O cancellation on AIX (by using the
Linux wrappers from "linux_close.c")
  - Improve adlc usability.
  - Improve handling of memory ordering in taskqueue.hpp.
  - Include dlfcn.h since link.h is not available on AIX
  - Include files needed for PPC C2 build.
  - Initial AIX build config files primarily based on changes from
SAP.  This is to preserve any Hotspot speciific settings
  - Initial Aix-Port checkin.
  - Initial PPC-Port checkin
  - link.h not required (and does not exist) on AIX.  Expanded
conditional include to cover AIX
  - linux: extend signal handler to catch SIGTRAP on ppc.
  - Make hsdis build and work on Linux/PPC64
  - make: Implement aix ppc64 build.
  - make: Implement linux ppc64 support in makefiles.
  - Make nio module to build on AIX
  - make: Reenable CORE build
  - Memory ordering as required for platforms with weak memory ordering (PPC)
  - Memory ordering: introduce functions to specify platform properties.
  - method handles: some smaller fixes and extensions for ppc
  - New files for template interpreter
  - New HS24 JSR292 implementation for PPC64
  - opto: adapt assertion in postaloc.cpp for ppc.
  - opto: Basic fixes for the ppc C2 port
  - opto: Do not relocate in scratch emit.
  - opto: explicit specification of rematerialization in ad file.
  - opto: Extend adlc to generate fields into nodes.
  - opto: Extend ImplicitNullCheck optimizations.
  - opto: Extend Load and Store nodes to know about memory ordering.
  - Opto: extend MachConstantNode functionality to ins_encode statements.
  - opto: hook to postprocess matcher output platform dependent.
  - opto: initialize _node_regs_max_index
  - Opto: introduce phase lateExpand to expand nodes after register allocation.
  - opto: issue more memory barriers as neede on PPC.
  - opto: Move static _in_dump_cnt to Compile object.
  - opto: Pass output stream to more debug routines.
  - opto/ppc: trap based null and range checks
  - opto / regalloc: Fix problem with rematerialization
  - opto,rt: Support for C calling conventions that require 64-bit ints.
  - opto: specify offset of IC load in java_to_interp stub.
  - Opto: Support for constants in stub code.
  - opto: support for constants on ppc
  - opto: switch off OptimizeFill on PPC as it causes errors.
  - opto: Trampoline relocations
  - opto: trap based null and range checks
  - Part assembler and macroassembler into two files.
  - posix: fix build errors on aix 7.1 and sparc
  - posix: Implement methods giving infos about signals.
  - ppc/aix: Adaptions needed for recent update.
  - ppc/aix: Fixes for recent update
  - PPC assembler and register definitions.
  - PPC assembly needed to start up the interpreter.
  - ppc: compiler fixes & enable OSR
  - PPC: Continue C2 port: now jvm98 runs with compiler
  - ppc: enable better implicit null check recognition with cOops
  - ppc: fix cOops problem on aix
  - ppc: fix gcc 4.3.4 build
  - ppc: Fix issue in trap based null check optimization
  - ppc: Fix register usage in GetAndAdd & friends.
  - ppc: fix safepoint node.
  - ppc: fix trap based range checks.
  - ppc: Implement card mark emitter for concurrentMarkSweep.
  - PPC: Initial C2 compiler port.
  - ppc: Initial C2 compiler port, ppc files
  - ppc: port method handles support (hs21-hs23 version)
  - ppc: PPC platform files as required to start up the interpreter.
  - ppc: Relax load aquire and various minor changes
  - ppc: SIGTRAP based checks
  - PPC specific C2 flags: add macro PD_C2_FLAGS to global flag definitions.
  - PPC specific flags: add macro PD_FLAGS to global flag definitions.
  - ppc: support for g1, cOops
  - PPC64: Support for ABI_ELFv2.
top-level make to the corresponding sub-makes.
  - Recent changes to ppc files, especially to file.
  - Recent improvements by SAP.
  - Removed unused DL_info declaration in java_md_solinux.c that
caused AIX compiler failure
  - Remove ppc_ prefixes in ppc files.
  - Remove some unnecessary diffs to Oracle coding.
  - rt: add fence to taskqueue to fix probelms showing in torture tests
  - rt: C argument in register AND stack slot.
  - rt: extend ELF-decoder to ppc function descriptor tables
  - rt: Use stubs to implement safefetch.
  - S7177701: error: Filling jar message during
javax/imageio/metadata/IIOMetadataFormatImpl compilation
  - S8003850 opto: introduce phase lateExpand to expand nodes after
register allocation.
  - S8003850: add support for constants in stub code
  - S8003853 opto: specify offset of IC load in java_to_interp stub.
  - S8005055: pass outputStream to more opto debug routines
  - S8006971 rt: Improve handling of memory ordering in taskqueue.hpp.
  - S8016491: PPC64 (part 2): Clean up PPC defines.
  - S8016586: PPC64 (part 3): basic changes for PPC64
  - S8016696: PPC64 (part 4): add relocation for trampoline stubs
  - S8017313: PPC64 (part 6): stack handling improvements
  - S8017317: PPC64 (part 7): cppInterpreter: implement support for
biased locking
  - S8019517: PPC64 (part 102): cppInterpreter: implement G1 support
  - S8019929: PPC64 (part 107): Extend ELF-decoder to support PPC64
function descriptor tables
  - S8019973: PPC64 (part 11): Fix IA64 preprocessor conditionals on AIX.
  - S8024344: PPC64 (part 112): C argument in register AND stack slot.
  - S8024468: PPC64 (part 201): cppInterpreter: implement bytecode profiling
  - S8033168: PPC64: gcc 4.8 warning in output_c.cpp
  - S8035396: Introduce accessor for tmp_oop in frame.
  - S8036767: PPC64: Support for little endian execution model
  - S8036976: PPC64: implement the template interpreter
  - S8037915: PPC64/AIX: Several smaller fixes
  - S8042309: Some bugfixes for the ppc64 port
  - Several NIO fixes for AIX to pass JCK tests
  - shared assembler: fix DelayedConstant.
  - shared: Basic non-functional fixes needed for the ppc port.
  - shared: Fix IA64 preprocessor conditionals on AIX.
  - shared: introduce functions to specify memory ordering properties
of platforms.
  - shared: Make adapter_code_size a function.
  - shared: Make hotspot build with gcc 4.7.2 and newer
  - shared: Make hsdis build and work on Linux/PPC64
  - shared: Memory ordering as required for platforms with weak memory
ordering (PPC)
  - shared: ordering of Independent Reads of Independent Writes
  - Some basic AIX changes to let the VM bootstrap itself and run JVM98.
  - Support for C calling conventions that require 64-bit ints.
  - Switched LD path setup for freetype version check so AIX can be
covered by the 'everything else' part
  - Switch off Compressed Oops on AIX until we fix them
  - Temporarily disable 'EnableInvokeDynamic' while working on the new
HS24 indy implementation
  - Temporarily switch off 'TrapBasedRangeChecks'
  - Trampoline relocations.
  - Trampoline relocations.  Add some more functionality.
  - Turned off ImplicitNullChecks on AIX by default because it
requires UseSIGTRAP which isn't currently implemented on AIX
  - Updated conditional handling for AIX when BLOCK_SOURCE enabled.
Resolved Undefined symbol: .isSourceFilterSupported
  - Updated Defs-versions to understand about using xlc compiler on AIX
  - Updated genUnixConstants.c to compile on AIX.  Made location of
fcntl.h file platform specific and added a default value for
O_NOFOLLOW as not supported on AIX
  - Updated hprof demo to build on AIX.  Added SAP changes to fake out
DLinfo etc
  - Updated hprof_md.c to include AIX as platform without hires timer
  - Updated location of bootstrap JDKs
  - Updated Platform.gmk to set PLATFORM=aix when uname is AIX
  - Updated README-ppc.html to reflect the current project status
  - Updated README to reflect the current status of the project
(mainly the availability of a mixed-mode VM on Linux and AIX)
  - Updated test scripts to understand AIX os environment
  - Updated using pthreads in java_md_solinux.c to just rely on
USE_PTHREADS. Removed the superflous __linux__ as  USE_PTHREADS is
already explictly turned on for linux builds
  - Use fork() to provide FORK() as Linux
  - Use LIBPATH in the launcher on AIX insted of LD_LIBRARY_PATH
  - Use macosx's BsdVirtualMachine implementation to provide
tools/attach on AIX platform.
  - Use stubs to implement safefetch.
  - Use the solaris' approach of doing IsXRenderAvailable check for AIX
* ARM port
  - Fix accidental reversion of PR1188 for armel
* JamVM
  - JVM_NewMultiArray: element class may be an array
  - jtreg test java/lang/reflect/Array/ExceedMaxDim
  - OpenJDK: Fix Local/Anonymous class checks
  - classlibMarkThreadTerminated should return Object*
  - Fix race-condition in constant-pool resolution code
  - JSR292: MethodHandle constant-pool refs may be resolved
  - JSR292: bootstrap method args error handling
  - JSR292: correct intrinsic cache COMPARE function
  - Race condition in setting up imethod table
  - GC: Minor performance improvement

The tarballs can be downloaded from:

We provide both gzip and xz tarballs, so that those who are able to
make use of the smaller tarball produced by xz may do so.

The tarballs are accompanied by digital signatures available at:

These are produced using my public key. See details below.

    PGP Key: 248BDC07 (
    Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07

SHA256 checksums:


The checksums can be downloaded from:

The following people helped with these releases:

* Aleksandar Antok (infinality patch)
* Tiago Sturmer Daitx (ppc64le support)
* Andrew John Hughes (upstream, AArch64 & PPC port imports, all other
bugs & release management)
* Radim Kolar (*BSD support)
* Trustin Lee (infinality patch)
* Robert Lougher (JamVM support)
* Xerxes Rånby (JamVM support)
* Yasumasa Suenaga (SystemTap jstack support)

We would also like to thank the bug reporters and testers!

To get started:

$ tar xzf icedtea-2.5.0.tar.gz


$ tar x -I xz -f icedtea-2.5.0.tar.xz


$ mkdir icedtea-build
$ cd icedtea-build
$ ../icedtea-2.5.0/configure
$ make

Full build requirements and instructions are available in the INSTALL file.

Happy hacking!
Andii :-)

More information about the distro-pkg-dev mailing list