Compiler and software product for compiling intermediate language bytecodes into Java bytecodes
First Claim
1. A method for compiling the bytecodes of an intermediate language, by a compiler having system calls and metadata content, wherein the bytecodes are compiled into Java bytecodes for use in a Java runtime environment, said method comprising:
- generating a virtual stack content by performing a static analysis of the intermediate language bytecodes;
decoding the variable types of the intermediate language bytecodes and producing virtual stack element types;
producing the Java bytecodes using said virtual stack element types; and
generating at least one Java class file, thereby enabling a programmer to develop software applications executable in a Java runtime environment.
3 Assignments
0 Petitions
Accused Products
Abstract
Compiler and software product for compiling intermediate language (IL) bytecodes, such as Microsoft IL (MSIL) instructions into Java bytecodes, are provided. The provided compiler decodes the IL instructions, generates the stack content, and produces Java bytecodes based on the stack content. Furthermore, the compiler is specially designed to allow a programmer to develop software applications using the .Net framework that could be easily executed using a Java runtime environment.
59 Citations
79 Claims
-
1. A method for compiling the bytecodes of an intermediate language, by a compiler having system calls and metadata content, wherein the bytecodes are compiled into Java bytecodes for use in a Java runtime environment, said method comprising:
-
generating a virtual stack content by performing a static analysis of the intermediate language bytecodes;
decoding the variable types of the intermediate language bytecodes and producing virtual stack element types;
producing the Java bytecodes using said virtual stack element types; and
generating at least one Java class file, thereby enabling a programmer to develop software applications executable in a Java runtime environment. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 65)
-
-
23. A computer executable code having system calls and metadata content, and capable of decoding intermediate language bytecodes and producing Java class files for use in a Java runtime environment, wherein executing the code comprises:
-
generating a virtual stack content by performing a static analysis of the intermediate language bytecodes;
decoding the variable types of the intermediate language bytecodes and producing virtual stack element types;
producing the Java bytecodes using said virtual stack element types; and
, generating at least one Java class file,thereby enabling a programmer to develop software applications executable in the Java runtime environment. - View Dependent Claims (24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44)
-
-
45. A compiler having system calls and metadata content, and capable of compiling intermediate language bytecodes into Java bytecodes for use in a Java runtime environment, said compiler comprising:
-
means for generating a virtual stack content by performing a static analysis of the intermediate language bytecodes;
means for decoding the variable types of the intermediate language bytecodes and producing virtual stack element types;
means for producing the Java bytecodes using said stack virtual stack element types; and
means for generating at least one Java class file, thereby enabling a programmer to develop software applications executable in a Java runtime environment. - View Dependent Claims (46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 66, 68, 69, 70, 72, 73, 74, 75, 76)
-
-
67. A computer executable code for executing .Net applications on a Java virtual machine (JVM) having a .Net compiler and a Java runtime environment, comprising the steps of:
-
generating bytecodes in an intermediate language using the .Net compiler;
compiling said intermediate language bytecodes into Java bytecodes; and
executing said Java bytecodes on the JVM, thereby enabling a programmer to develop .Net applications executable in the Java runtime environment. - View Dependent Claims (71)
-
-
77. A computer system computer system comprising at least a central processing unit (CPU);
- a memory;
means for inputting at least one .Net application;
a .Net compiler; and
a computer executable code for executing said at least one .Net application on a Java virtual machine (JVM), wherein said code comprises the steps of;
generating intermediate language bytecodes using said .Net compiler;
compiling said intermediate language into Java bytecodes; and
executing said Java bytecodes on said JVM. - View Dependent Claims (78, 79)
- a memory;
Specification