Release NotesCLDC HotSpotTM Implementation
|
The CLDC HotSpotTM Implementation virtual machine is a high-performance Java virtual machine targeted for devices such as cellular phones and wireless e-mail devices to be manufactured in high volume. The CLDC HotSpot Implementation is intended to deliver maximum performance on such resource-constrained devices.
This is a source code release intended to assist licensees with porting the CLDC HotSpot Implementation virtual machine to their target devices. Also included in this release are binaries for Win32 on the x86 processor and Linux on the ARM processor. The reference platforms for the ARM architecture are the Texas Instruments OMAP2430 Software Development Platform (with OMAP730 processor) and the OMAP3430 (required for Jazelle RCT support).
This release is primarily intended for licensees porting to an ARM processor
target architecture.
Source code and make files are provided for a variety of tool chains (such
as GNU and ADS) and various operating systems (such as Linux). Support
is also available for the CodeWarrior C++ compiler hosted in the Win32 environment.
The versions of ARM supported are the ARM 4 (or higher) processor with the 32bit instruction set, and ARM with Thumb architecture. Source code for the ARM processors is provided. Also provided is source code for the x86 processor for compiling under either Win32 or Linux. (These implementations are intended primarily as a reference.) Widely available development tools make it straightforward to build CLDC HotSpot Implementation on x86 and to begin to understand its architecture.
This release supports targeted development tools for an ARM implementation based on Linux operating system, and on any implementation supported by ADS tools. A licensee who wants to port CLDC HotSpot Implementation to an ARM-based device running a different operating system will need to perform an OS port, as described in Chapter 3 of the CLDC HotSpot Implementation Porting Guide.
Support for Jazelle DBX-enabled ARM processors is included in this release as a separately downloadable bundle. Note that modifications to your operating system might be necessary to port this feature. An additional document about porting this technology, (CLDC HotSpot Implementation Jazelle Porting Notes) is available in the separately downloadable bundle. For more information, please contact Java Licensee Engineering.
This confidential and proprietary software may be used for evaluation or testing purposes for internal use only. Any commercial use requires execution of a separate JTEK licensing agreement from ARM Limited.
This is in addition to any license agreement the licensor may have entered into with Sun. For the avoidance of doubt, distribution of products containing software code to exercise the BXJ instruction and enable the use of the ARM Jazelle architecture extension without a JTEK licensing agreement from ARM is expressly forbidden.
(C) COPYRIGHT 1999 to 2004 ARM Limited
(C) COPYRIGHT 2004 Sun Microsystems, Inc.
ALL RIGHTS RESERVED
There are a number of new features in the 2.1 release of the CLDC HotSpot Implementation:
This 2.1 release of CLDC HotSpot Implementation has new optimizations in method inlining, which contribute to general runtime performance improvement.
Other JIT-compiler Optimizations in this release are targeted at scripting and XML applications and engines. In past releases of CLDC HotSpot Implementation, the adaptive dynamic compiler did not handle well some Java bytecode patterns typical in scripting and XML processing engines and applications. In particular, non-optimal ARM code was generated for long switch constructs inside loops. This 2.1 release has improved ARM code generation in these situations for better performance and compact size.
Depending on which build option is selected, the CLDC libraries provided
with this implementation are compliant with either the CLDC 1.0, CLDC 1.1 or CLDC
1.1.1 Specification. Most testing has been performed on the CLDC 1.1 configuration. Building for CLDC 1.1.1 compliance is provided for future support of the MIDP 3.0 Specification.
The requirements for building and porting the implementation of CLDC HotSpot Implementation include compiler requirements and other development tool requirements. The development workstation could be a Solaris, Linux or an Intel machine running Microsoft Windows . The main requirements are a C++ compiler and a UNIX or UNIX-style shell to run GNU makefiles.
For building and studying the CLDC HotSpot Implementation on the x86 Win32 platform, Microsoft Visual C++ (Professional Version 6.0 or higher) or Visual Studio is required. Also required is the Processor Pack 5 for Visual C++, which provides the x86 macro assembler. The macro assembler must be version 6.15 or higher. The code in this release requires a target processor that supports the Intel 486 (or higher) instruction set.
For ports targeted to the Linux platform, GCC or ADS compilers are required. (ADS version 1.2)
To build for ARM (the actual target processor) a GCC compiler for ARM is required. There are different versions of such compilers for various ARM architectures. This release supports the ARM 4 (or higher) architecture.
The build procedures require that you have GNU Make installed on your workstation. For more details, refer to Chapter 4 of the CLDC HotSpot Implementation Porting Guide .
The distribution is contained in a zip archive file, cldc_hi-2_1-rr-src-b17-sun-03_apr_2008.zip. Unzipping the distribution creates the directory cldc with the following subdirectories:
The contents of these directories are further detailed in Chapter 3 of the CLDC HotSpot Implementation Porting Guide.
This section covers the topics:
To install the distribution, unzip the archive file cldc_hi-2_1-rr-src-b17-sun-03_apr_2008.zip in the directory of your choice.
The first step to porting CLDC HotSpot Implementation is to build the x86 implementation as provided in this release (under Windows 2000 or Linux OS) and then to run the executable. Detailed instructions for doing this are provided in Chapter 4 of CLDC-Hotspot-Build.pdf.
This release supports Symbian 9.0 for Symbian builds.
However, when building symbian_winscw
(with build dir = build/symbian_winscw)
you must copy two files from Symbian 7.0 (which Symbian does not include with their 9.0 distribution):
wserv.lib
wserv.dll.
These files should be copied to both these directories:
\Epoc32\release\WINSCW\udeb \Epoc32\release\WINSCW\urel
QA tests have been run on a regular basis on the following platforms:
No problems have been reported at the present time.
There are some known problems with the K Native Interface (KNI) Specification that accompanies this release.
| BUG ID | DESCRIPTION | CLARIFICATION |
|---|---|---|
| 4790500 | KNI_GetStatic |
Superclasses are not supported for static field access. |
Copyright © 2008 Sun Microsystems, Inc. All rights reserved.