IP Library Patent Application 12325685
Patent Application
App. No. 12/325,685

Framework for Control Flow-Aware Processes

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
12/325,685
Abstract

An improved system and method are disclosed for processing Java program code. Java source code is annotated with a Module or a ControlFlow annotation. The Java source code is then compiled to produce Java bytecode, which in turn is compiled by a just-in-time compiler to produce native code, which retains the annotations. The native code with annotations is then executed. If a bug is identified during the execution of the native code, an associated Module is selected for debugging, followed by determining associated Java source code segments within the responsible control flow path. Debugging operations are then performed on the associated Java source code segments.

Claims (25)

1 . A method for debugging Java program code, comprising:

annotating Java source code with a control flow annotation module, wherein said annotations are retained in compiled code compiled from said Java source code; and

debugging said compiled code, wherein at least one of said annotations are provided by said control annotation module in response to the performance of a debugging operation.

2 . The method of claim 1 , wherein said annotations are applied to a predetermined segment of said Java source code.

3 . The method of claim 2 , wherein said annotations comprise a Module annotation.

4 . The method of claim 3 , wherein an individual said predetermined segment of Java source code is associated with a plurality of said Module annotations.

5 . The method of claim 2 , wherein said annotations comprise a ControlFlow annotation.

6 . The method of claim 5 , wherein said ControlFlow annotation comprises a Callers element defining a first said predetermined Java source code segment that can pass control to a second said predetermined Java source code segment.

7 . The method of claim 5 , wherein said ControlFlow annotation comprises an Objects element defining instances of classes that can affect the behavior of a said predetermined Java source code segment.

8 . The method of claim 5 , wherein said ControlFlow annotation comprises a Static Variables element defining static variables that can affect the behavior of a said predetermined Java source code segment.

9 . The method of claim 4 , wherein said compiled code comprises compiled Java bytecode.

10 . The method of claim 4 , wherein said compiled code comprises compiled native code.

11 . A system for debugging Java program code, comprising:

a control flow annotation module operable to:

annotate Java source code, wherein said annotations are retained in compiled code compiled from said Java source code; and

provide at least one of said retained annotations in response to the performance of a debugging operation.

12 . The system of claim 1 , wherein said annotations are applied to a predetermined segment of said Java source code.

13 . The system of claim 12 , wherein said annotations comprise a Module annotation.

14 . The system of claim 13 , wherein an individual said predetermined segment of Java source code is associated with a plurality of said Module annotations.

15 . The system of claim 12 , wherein said annotations comprise a ControlFlow annotation.

16 . The system of claim 15 , wherein said ControlFlow annotation comprises an Objects element defining instances of classes that can affect the behavior of a said predetermined Java source code segment.

17 . The system of claim 15 , wherein said ControlFlow annotation comprises an Objects element defining instances of classes that can affect the behavior of a said predetermined Java source code segment.

18 . The system of claim 15 , wherein said ControlFlow annotation comprises a Static Variables element defining static variables that can affect the behavior of a said predetermined Java source code segment.

19 . The system of claim 1 , wherein said compiled code comprises compiled Java bytecode.

20 . The system of claim 1 , wherein said compiled code comprises compiled native code.

Assignments (3)
RELEASE OF SECURITY INTEREST Recorded May 12, 2021
From: WILMINGTON TRUST, NATIONAL ASSOCIATION
To: GLOBALFOUNDRIES U.S. INC.
Reel/Frame 056987/0001 →
AFFIRMATION OF PATENT ASSIGNMENT Recorded Aug 18, 2009
From: ADVANCED MICRO DEVICES, INC.
To: GLOBALFOUNDRIES INC.
Reel/Frame 023120/0426 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 1, 2008
From: JOSHI, SHRINIVAS B.
To: ADVANCED MICRO DEVICES, INC.
Reel/Frame 021907/0255 →