Compiler and Architecture Support for Java

12/8/97


Click here to start


Table of Contents

Compiler and Architecture Support for Java

PPT Slide

Outline

Software Migration Barrier

New Software Needs

PPT Slide

Java Virtual Machine Specification

Some Terms

Dynamic Linking

PPT Slide

PPT Slide

Java VM Instruction Set

PPT Slide

PPT Slide

Push Constant Instructions

Comments on Push Constants

Load/Store Local Variables

Comments on Load/Store Local Variable

Evaluation Stack Management

Comment on Value Stack Management

Arithmetic Instructions

Shift and Logic Instructions

Compare and Branch (integer and reference)

Compare and Branch (integers and references)

Compare

Unconditional Branches

Comments on Branches

Method Invocation

Invoke Virtual

Invoke Non-Virtual

Invoke Static

Invoke Interface

Method Invocation Example

Function Returns

Object Manipulation

Put Field Details

New Details

Check Cast Details

PPT Slide

Quick Versions

Java Execution Models

PPT Slide

Java Processors

Pipeline Design

Example of Quick Variation Instructions

Claimed Performance

Native Code Translation

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

PPT Slide

Simulation Configuration

Branch Characteristics (compress, SPECint92)

Cache Characteristics

PPT Slide

Java as a Universal Software Distribution Language

C to Java Structural Differences

C to Java Grammar Differences

C to Java Library Differences

Other Considerations:

Other Considerations:

How to fit a C program into an object oriented format

Emulate C in Java

Map to C-like Java

Transform C to Java

Ways to Fit a C Program into an Object Oriented Format

Creating Objects Out of a C Program

Fitting Large C Programs into Java Programs

Break Along Existing C File Lines

Merge Over Existing C File Lines to Minimize the Number of Java Objects

Handling C Pointers in Java

One Way of Handling C Pointer Manipulation With Java Constructs

Differences Between the C and Java Main Parameters

Differences in Main Parameters: (continued)

Other Concerns: Error handling in C versus Exception Handling in Java

Information Sources

Information Sources (cont.)

Information Sources (cont.)

Information Sources (cont.)

Author: IMPACT