Converting JavaScript into a device-independent representation
    1.
    发明授权
    Converting JavaScript into a device-independent representation 有权
    将JavaScript转换为与设备无关的表示

    公开(公告)号:US08752016B2

    公开(公告)日:2014-06-10

    申请号:US12316730

    申请日:2008-12-15

    IPC分类号: G06F9/44

    CPC分类号: G06F8/71 G06F8/47

    摘要: A device-independent intermediate representation of a source code is generated and stored, e.g., in a memory or other storage mechanism. The stored intermediate representation of the source code is used to generate a device-specific machine code corresponding to the source code. The stored intermediate representation may be updated, e.g., periodically, for example by obtaining an updated version of the source code and compiling the updated source code to generate an updated intermediate representation. The stored intermediate representation may be based on source code received from a device that is synchronized with which a compiling device that generates the device-specific machine code. In some cases, the stored intermediate representation may be used to generate for each of a plurality of devices a corresponding device-specific machine code.

    摘要翻译: 生成源代码的与设备无关的中间表示,并且例如存储在存储器或其它存储机制中。 存储的源代码的中间表示用于生成与源代码对应的特定于设备的机器代码。 可以例如通过获得源代码的更新版本并编译更新的源代码来生成更新的中间表示,来例如周期性地更新存储的中间表示。 存储的中间表示可以基于从与生成特定于设备的机器码的编译设备与其同步的设备接收的源代码。 在一些情况下,存储的中间表示可以用于为多个设备中的每一个产生相应的设备专用机器码。

    Converting javascript into a device-independent representation
    2.
    发明申请
    Converting javascript into a device-independent representation 有权
    将javascript转换为与设备无关的表示

    公开(公告)号:US20100153929A1

    公开(公告)日:2010-06-17

    申请号:US12316730

    申请日:2008-12-15

    IPC分类号: G06F9/45

    CPC分类号: G06F8/71 G06F8/47

    摘要: A device-independent intermediate representation of a source code is generated and stored, e.g., in a memory or other storage mechanism. The stored intermediate representation of the source code is used to generate a device-specific machine code corresponding to the source code. The stored intermediate representation may be updated, e.g., periodically, for example by obtaining an updated version of the source code and compiling the updated source code to generate an updated intermediate representation. The stored intermediate representation may be based on source code received from a device that is synchronized with which a compiling device that generates the device-specific machine code. In some cases, the stored intermediate representation may be used to generate for each of a plurality of devices a corresponding device-specific machine code.

    摘要翻译: 生成源代码的与设备无关的中间表示,并且例如存储在存储器或其它存储机制中。 存储的源代码的中间表示用于生成与源代码对应的特定于设备的机器代码。 可以例如通过获得源代码的更新版本并编译更新的源代码来生成更新的中间表示,来例如周期性地更新存储的中间表示。 存储的中间表示可以基于从与生成特定于设备的机器码的编译设备与其同步的设备接收的源代码。 在一些情况下,存储的中间表示可以用于为多个设备中的每一个产生相应的设备专用机器码。

    Observation and analysis based code optimization
    3.
    发明授权
    Observation and analysis based code optimization 有权
    基于观察和分析的代码优化

    公开(公告)号:US09195486B2

    公开(公告)日:2015-11-24

    申请号:US12847945

    申请日:2010-07-30

    IPC分类号: G06F9/45 G06F9/455 G06F11/30

    摘要: Observation and analysis based optimization of software code is disclosed. An expected value is chosen for a dynamic attribute that cannot be determined, prior to execution of the associated software code, to be guaranteed to have that expected value at runtime. An optimized version of the software code is generated, including one or more optimizations based on an assumption that the dynamic attribute will have the expected value. Non-exhaustive examples of a dynamic attribute include a variable type; a location in memory; a location in which a global object, property, or variable is stored; the contents of a global function or method; and a value of a global property or variable. A check is performed during execution of the optimized version of the software code, prior to executing the portion that has been optimized based on the assumption, to verify that the dynamic attribute has the expected value. In the event that it is determined at runtime that the dynamic attribute does not have the expected value, execution reverts to backup code that is not based on the assumption that dynamic attribute will have the expected value.

    摘要翻译: 公开了基于观察和分析的软件代码优化。 为执行关联的软件代码之前无法确定的动态属性选择期望值,以确保在运行时具有该预期值。 生成软件代码的优化版本,包括基于动态属性将具有期望值的假设的一个或多个优化。 动态属性的非穷尽示例包括可变类型; 记忆中的位置 存储全局对象,属性或变量的位置; 全局函数或方法的内容; 和全局属性或变量的值。 在执行已经基于该假设优化的部分之前,在执行软件代码的优化版本期间执行检查,以验证动态属性具有期望值。 在运行时确定动态属性不具有预期值的情况下,执行将恢复为不基于动态属性具有期望值的假设的备份代码。

    OBSERVATION AND ANALYSIS BASED CODE OPTIMIZATION
    9.
    发明申请
    OBSERVATION AND ANALYSIS BASED CODE OPTIMIZATION 有权
    基于观察和分析的代码优化

    公开(公告)号:US20120030661A1

    公开(公告)日:2012-02-02

    申请号:US12847945

    申请日:2010-07-30

    IPC分类号: G06F9/45

    摘要: Observation and analysis based optimization of software code is disclosed. An expected value is chosen for a dynamic attribute that cannot be determined, prior to execution of the associated software code, to be guaranteed to have that expected value at runtime. An optimized version of the software code is generated, including one or more optimizations based on an assumption that the dynamic attribute will have the expected value. Non-exhaustive examples of a dynamic attribute include a variable type; a location in memory; a location in which a global object, property, or variable is stored; the contents of a global function or method; and a value of a global property or variable. A check is performed during execution of the optimized version of the software code, prior to executing the portion that has been optimized based on the assumption, to verify that the dynamic attribute has the expected value. In the event that it is determined at runtime that the dynamic attribute does not have the expected value, execution reverts to backup code that is not based on the assumption that dynamic attribute will have the expected value.

    摘要翻译: 公开了基于观察和分析的软件代码优化。 为执行关联的软件代码之前无法确定的动态属性选择期望值,以确保在运行时具有该预期值。 生成软件代码的优化版本,包括基于动态属性将具有期望值的假设的一个或多个优化。 动态属性的非穷尽示例包括可变类型; 记忆中的位置 存储全局对象,属性或变量的位置; 全局函数或方法的内容; 和全局属性或变量的值。 在执行已经基于该假设优化的部分之前,在执行软件代码的优化版本期间执行检查,以验证动态属性具有期望值。 在运行时确定动态属性不具有预期值的情况下,执行将恢复为不基于动态属性具有期望值的假设的备份代码。