Abstract:
A computer-implemented method for compilation of applications can include receiving a set of software instructions and traversing the set of software instructions based on a control-flow order of the set of software instructions. The traversing can include identifying a first allocation instruction in the set of software instructions, the first allocation instruction being configured to allocate a first amount of memory for a first object and identifying a second allocation instruction in the set of software instructions, the second allocation instruction being configured to allocate a second amount of memory for a second object. The method can include determining that the first allocation instruction dominates the second allocation instruction and, in response to the determining, combining the first allocation instruction and the second allocation instruction into a folded allocation instruction that allocates the first amount of memory and the second amount of memory in a single memory allocation operation.
Abstract:
Systems and methods for configuring browser policy settings on client computing devices are provided. In some aspects, a method includes receiving login credentials from a client computing device. The client computing device includes a browser. The method also includes transmitting browser policy data associated with the login credentials to the client computing device. The browser policy data identifies browser policy settings to be installed on the browser. The browser policy settings identified by the browser policy data include four or more of: compliance settings, behavioral settings, browser/software applications, permission to access one or more websites, restrictions on accessing one or more websites, read permission in a remote document storage unit accessible via the browser, or write permission in a remote document storage unit accessible via the browser.
Abstract:
Systems and methods for compiling source code are provided. In some aspects, a method includes receiving one or more code stubs configured to be inline cached at one or more call sites of a native code generated by a baseline compiler from a source code. Each of the one or more code stubs is based on an intermediate representation between the source code and the native code. The method also includes translating the source code into the intermediate representation, inlining the one or more code stubs into the translated source code, and optimizing, by an optimizing compiler, at least one of the translated source code and the inlined one or more code stubs.
Abstract:
A system and method is disclosed for sharing type information between object maps. When an object data structure is modified in a dynamic programming environment to change an initial number of object properties a child object map for the modified object data structure is generated based on a parent object map for the unmodified object data structure, and a descriptor array associated with the base object map is shared with the child object map. The descriptor array is dynamically altered according to the modified object data structure, and access to the descriptor array is limited from the parent object map in accordance with the initial number of object properties of the unmodified object data structure.