Patents by Inventor Derek Jay Conrod

Derek Jay Conrod has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 9753707
    Abstract: A method and a computing device for reducing deoptimization in a virtual machine are provided. Source code of a dynamically-typed program is compiled. A context-free type-state recorder records a first data type of a value associated with a particular named memory location within the source code. Optimized code may be generated based on the first data type of the value being a matching data type for global values associated with the particular named memory location. One or more global values associated with the particular named memory location may be type-checked. The context-free type-state recorder may record, if one or more of the global values associated with the particular named memory location is a different data type than the first data type, one or more different data types associated with the particular named memory location. New optimized code may then be generated.
    Type: Grant
    Filed: July 24, 2015
    Date of Patent: September 5, 2017
    Assignee: QUALCOMM Innovation Center, Inc.
    Inventor: Derek Jay Conrod
  • Publication number: 20160291981
    Abstract: Removing invalid literal load values, and related circuits, methods, and computer-readable media are disclosed. In one aspect, an instruction processing circuit provides a literal load table containing one or more entries comprising an address and a cached literal load value. Upon detecting a literal load instruction in an instruction stream, the instruction processing circuit determines whether the literal load table contains an entry having an address of the literal load instruction. If so, the instruction processing circuit removes the literal load instruction from the instruction stream, and provides the cached literal load value stored in the entry to at least one dependent instruction. The instruction processing circuit further determines whether an invalidity indicator for the literal load table has been received. If so, the instruction processing circuit flushes the literal load table. The invalidity indicator may be generated responsive to modification of a constant table.
    Type: Application
    Filed: April 6, 2015
    Publication date: October 6, 2016
    Inventors: Behnam Robatmili, Gheorghe Calin Cascaval, Michael William Morrow, Derek Jay Conrod, Bohuslav Rychlik
  • Publication number: 20160026446
    Abstract: A method and a computing device for reducing deoptimization in a virtual machine are provided. Source code of a dynamically-typed program is compiled. A context-free type-state recorder records a first data type of a value associated with a particular named memory location within the source code. Optimized code may be generated based on the first data type of the value being a matching data type for global values associated with the particular named memory location. One or more global values associated with the particular named memory location may be type-checked. The context-free type-state recorder may record, if one or more of the global values associated with the particular named memory location is a different data type than the first data type, one or more different data types associated with the particular named memory location. New optimized code may then be generated.
    Type: Application
    Filed: July 24, 2015
    Publication date: January 28, 2016
    Inventor: Derek Jay Conrod
  • Publication number: 20140173556
    Abstract: Systems, methods, and devices for executing a function in a dynamically-typed language are described herein. In one aspect, a method includes generating a function selection decision tree based on one or more specializations of a generic function and one or more function inputs via an electronic device. The method further includes selecting one of the specializations or the generic function based on an input type of at least one function input via the electronic device. The method further includes calling the selected specialization or generic function via the electronic device. Another aspect of the subject matter described in the disclosure provides a method of executing a function in a prototype-based dynamically-typed language. The method includes maintaining a list of calls to one or more specializations of the function via the electronic device. The method further includes creating or destroying a specialization of the function via the electronic device.
    Type: Application
    Filed: November 18, 2013
    Publication date: June 19, 2014
    Applicant: QUALCOMM Incorporated
    Inventors: Behnam Robatmili, Derek Jay Conrod, Mohammad Hossein Reshadi, Subrato Kumar De, Gheorghe Calin Cascaval