Class / Patent application number | Description | Number of patent applications / Date published |
717147000 | Platform-independent form (e.g., abstract code) | 12 |
20080235675 | Typed intermediate language support for existing compilers - Described is a technology by which a compiler's intermediate representation is generated in a way that includes type checking to ensure safe execution. Typed representation of virtual method invocation uses an exact class name to represent objects of the class but not those of the subclasses, and a combined class type as an encoding of an existential type to represent objects of the class and subclasses of the class. Typed representation of interface method invocation is also provided, as is testing whether the object can be cast to a class, to an interface and/or to a class vector. Vector store checking is also able to be type checked. The medium-level intermediate representation is translated into a low-level intermediate representation, including choosing data representation for types, and converting medium-level intermediate representation operators into instructions in the low-level representation. Using a typed intermediate representation without scopes and determining the scopes of type variables when performing type checking is also described. | 09-25-2008 |
20080244544 | Using hardware checkpoints to support software based speculation - Hardware checkpoints may be used to mark software-based speculation regions. An instruction may be provided at the beginning of a speculation region and at the end of the speculation region. If an exception occurs during the speculation region, a hardware rollback may be occurred. The hardware rollback rolls back to the instruction at the beginning of the speculation region. The hardware may take a checkpoint by taking a register snapshot and treating future memory updates as tentative. When the instruction marking the end of the speculation is reached, all the tentative memory updates are committed and the previously taken register snapshot is discarded. | 10-02-2008 |
20080250398 | DEVICE, METHOD, AND COMPUTER PROGRAM PRODUCT FOR OUTPUTTING STORAGE LOCATION OF VERIFICATION-TARGET CHARACTER STRING - An assigning unit included in a device assigns an ID to a verification-target character string. A mapping file creating unit creates a mapping file in which the ID is associated with location data that indicates a location of the verification-target character string. In addition, an encoding unit included in the device encodes the ID into a zero-width character string. A character-string concatenating unit concatenates the zero-width character string to the verification-target character string. Furthermore, a decoding unit included in the device decodes the zero-width character string to the ID in response to selection of the verification-target character string displayed by a verification-target character string output unit. An extracting unit extracts the location data from the mapping file on the basis of the decoded ID. A mapping data output unit included in the device displays the mapping data including the extracted location data. | 10-09-2008 |
20090158261 | Computer-Implemented Method of Releasing Battery State Estimation Software - A computer implemented method of facilely releasing a BSE software module adapted for execution by an electronic control unit having an update model of the BSE software and a controller having an embedded desktop model of the BSE software, includes a plurality of autonomously performed steps resulting in the compiling of a plurality of c-files into a library file. A single keyword activated preferred embodiment is disclosed in a MatLab®/Simulink®/Real-Time Workshop® environment. | 06-18-2009 |
20100269104 | System and Methods for Generic Data Marshalling without Object Modification - A method for generic marshalling without object modification includes making a service request for at least one object by inputting data into a computer system; constructing at least one marshalling request from the service request to marshal the at least one object; selecting a marshaller that supports an output format for the data; an abstract marshaller calling at least one strategy provider based on the at least one marshalling request and the selected marshaller; and the at least one strategy provider calling at least one strategy. The at least one strategy defines a translation that converts values from the at least one object into a generic format recognized by the abstract marshaller so the values are translated into the specific output format supported by the selected marshaller. | 10-21-2010 |
20100299659 | ATTRIBUTE BASED METHOD REDIRECTION - A programming environment may have an abstract interface definition that may contain a redirection definition that may cause a call to be bound to a redirected method or function. The redirected method or function may be a conditional redirection, and some embodiments may perform various checks including signature checks, static and runtime access checks, and other verifications for the redirected method. The redirection may enable a programmer to modify a portion of an interface without having to re-implement all of the functions of the interface. | 11-25-2010 |
20120117549 | Method and Data Processing System for Partial Inlining with Software Based Restart - A compiler and method of optimizing code by partial inlining of a subset of blocks of called blocks of code into calling blocks of code. A restart of the called blocks of code is provided for the case where non-inlined blocks of code are reached at run time. Blocks selected for partial inlining may include global side effects depending on the computer program environment. Global side effects in the selected blocks of code leading to a restart are sanitized in order to defer changes to the global state of the computer program. | 05-10-2012 |
20130024848 | Rearrangement of Algebraic Expressions Based on Operand Ranking Schemes - A system and method for rearranging algebraic expressions occurring in program code based on a scheme of ranking operands. The system scans program code to identify an algebraic expression specified by the program code. The expression includes binary operations, scalar operands and at least one array operand. The system operates on the algebraic expression to obtain a final expression by: computing a rank for each of the operands; and performing algebraic transformations on selected subexpressions of the algebraic expression so that in the final expression operands are combined in the order of their rank. The ranking scheme may be designed to force scalars to be combined before arrays, and/or, to force constants to be combined first, loop invariants second, and variants last. In some embodiments, the ranking scheme is a vector ranking scheme including two or more components (such as invariance rank, dimensional rank and data-size rank). | 01-24-2013 |
20140089907 | METHOD FOR PROVIDING AN APPLICATION AS A LIBRARY IN A VIRTUAL MACHINE - A method for providing an application by a virtual machine. The method includes a step of compiling an application written in a source code to a native application for a particular platform and a step of transforming the compiled application into a library, wherein the library is made available to the virtual machine. | 03-27-2014 |
20140289717 | DETECTING SERIALIZATION SCHEME USED IN SOFTWARE APPLICATIONS - Technology is disclosed for determining a serialization scheme used in serializing a software object by an application (“the technology”). A source application can serialize the object using multiple serialization schemes. In order for another application to deserialize the object serialized by the source application, the application may have to know the serialization scheme used in serializing the object. The technology can analyze an intermediate code, e.g., bytecode, of the source application to determine the serialization scheme used by the source application. The technology compares a portion of the code of the source application that serializes the objects with multiple serialization scheme templates having code for known serialization schemes and determines the serialization scheme used by the source application based on a matching serialization scheme template. After the serialization scheme is identified, the application can reconstruct the object from the serialized object using the identified serialization scheme. | 09-25-2014 |
20150347107 | Unified Intermediate Representation - A system decouples the source code language from the eventual execution environment by compiling the source code language into a unified intermediate representation that conforms to a language model allowing both parallel graphical operations and parallel general-purpose computational operations. The intermediate representation may then be distributed to end-user computers, where an embedded compiler can compile the intermediate representation into an executable binary targeted for the CPUs and GPUs available in that end-user device. The intermediate representation is sufficient to define both graphics and non-graphics compute kernels and shaders. At install-time or later, the intermediate representation file may be compiled for the specific target hardware of the given end-user computing system. The CPU or other host device in the given computing system may compile the intermediate representation file to generate an instruction set architecture binary for the hardware target, such as a GPU, within the system. | 12-03-2015 |
20160139895 | SYSTEM AND METHOD FOR PROVIDING AND EXECUTING A DOMAIN-SPECIFIC LANGUAGE FOR CLOUD SERVICES INFRASTRUCTURE - A system and method for providing and executing a domain-specific programming language for cloud services infrastructure is provided. The system may be used to integrate references to external entities, such as cloud service compute instances, directly into a domain-specific programming language, allowing developers to easily integrate cloud services directly using the domain-specific programming language. Using a domain-specific programming language, references to external entities (not in memory) as variables may be used. Using the domain-specific programming language described herein, lexical scoping may be mapped onto collections of entities that aren't a native part of the language. In order to facilitate these and other benefits, the system may maintain state information of all references and shared variables across program boundaries. The system may make the state information accessible via a state information service that understands the language features of the domain-specific programming language. | 05-19-2016 |