Patents by Inventor Marcelo Lopez Ruiz

Marcelo Lopez Ruiz 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: 10853042
    Abstract: Methods and devices for generating program code representations may include receiving program code or edited program code for an application executing on the computer device. The methods and devices may include receiving an identification of a selected pipeline from a plurality of pipelines that defines a plurality of passes of actions to execute on the program code or the edited program code to optimize the program code or the edited program code. The methods and devices may include running the selected pipeline and generate optimizer output with a program code representation of the program code.
    Type: Grant
    Filed: June 17, 2019
    Date of Patent: December 1, 2020
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Marcelo Lopez Ruiz, Ivan Nevraev, David M. Peixotto, Xiang Li
  • Publication number: 20200004515
    Abstract: Methods and devices for generating program code representations may include receiving program code or edited program code for an application executing on the computer device. The methods and devices may include receiving an identification of a selected pipeline from a plurality of pipelines that defines a plurality of passes of actions to execute on the program code or the edited program code to optimize the program code or the edited program code. The methods and devices may include running the selected pipeline and generate optimizer output with a program code representation of the program code.
    Type: Application
    Filed: June 17, 2019
    Publication date: January 2, 2020
    Inventors: Marcelo LOPEZ RUIZ, Ivan NEVRAEV, David M. PEIXOTTO, Xiang LI
  • Patent number: 10503634
    Abstract: Techniques are described for semantically comparing machine code traces generated by compilers that compile computer software code. For example, a trace of machine code generated by a compiler can be obtained. The trace can be transformed into a set of expressions in a uniform expression format (e.g., by performing translation of the trace instructions into corresponding expressions and/or by performing other transformations). The set of expressions in the uniform expression format can be compared to other sets of expressions in the uniform expression format (e.g., other sets of expressions created from traces of machine code from other compilers). Results of the comparison can comprise indications of whether the sets of expressions match.
    Type: Grant
    Filed: May 25, 2018
    Date of Patent: December 10, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Xiang Li, Ivan Nevraev, David McCarthy Peixotto, Marcelo Lopez Ruiz
  • Publication number: 20190361802
    Abstract: Techniques are described for semantically comparing machine code traces generated by compilers that compile computer software code. For example, a trace of machine code generated by a compiler can be obtained. The trace can be transformed into a set of expressions in a uniform expression format (e.g., by performing translation of the trace instructions into corresponding expressions and/or by performing other transformations). The set of expressions in the uniform expression format can be compared to other sets of expressions in the uniform expression format (e.g., other sets of expressions created from traces of machine code from other compilers). Results of the comparison can comprise indications of whether the sets of expressions match.
    Type: Application
    Filed: May 25, 2018
    Publication date: November 28, 2019
    Applicant: Microsoft Technology Licensing, LLC
    Inventors: Xiang Li, Ivan Nevraev, David McCarthy Peixotto, Marcelo Lopez Ruiz
  • Patent number: 10365904
    Abstract: Methods and devices for generating program code representations may include receiving program code or edited program code for an application executing on the computer device. The methods and devices may include receiving an identification of a selected pipeline from a plurality of pipelines that defines a plurality of passes of actions to execute on the program code or the edited program code to optimize the program code or the edited program code. The methods and devices may include running the selected pipeline and generate optimizer output with a program code representation of the program code.
    Type: Grant
    Filed: January 29, 2018
    Date of Patent: July 30, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Marcelo Lopez Ruiz, Ivan Nevraev, David M. Peixotto, Xiang Li
  • Publication number: 20190102152
    Abstract: Methods and devices for generating program code representations may include receiving program code or edited program code for an application executing on the computer device. The methods and devices may include receiving an identification of a selected pipeline from a plurality of pipelines that defines a plurality of passes of actions to execute on the program code or the edited program code to optimize the program code or the edited program code. The methods and devices may include running the selected pipeline and generate optimizer output with a program code representation of the program code.
    Type: Application
    Filed: January 29, 2018
    Publication date: April 4, 2019
    Inventors: Marcelo LOPEZ RUIZ, Ivan NEVRAEV, David M. PEIXOTTO, Xiang LI
  • Patent number: 9144744
    Abstract: Example apparatus and methods concern an improved immersive experience for a video gamer that is provided by controlling a game based on the three dimensional location and orientation of a control and display device held by or otherwise associated with the gamer. The location is determined from data comprising a three dimensional position and an orientation of a portion of a player in a three dimensional space associated with a computerized game. The facing and rotation of the device is determined as a function of both the location of the device and the orientation of the device. The orientation may be determined by data from motion sensors in or on the device. Example apparatus and methods control the computerized game based, at least in part, on the position of the device, the facing of the device, and the rotation of the device.
    Type: Grant
    Filed: June 10, 2013
    Date of Patent: September 29, 2015
    Inventors: Eric Langlois, Ed Pinto, Marcelo Lopez Ruiz, Todd Manion, Zsolt Mathe
  • Publication number: 20140364227
    Abstract: Example apparatus and methods concern an improved immersive experience for a video gamer that is provided by controlling a game based on the three dimensional location and orientation of a control and display device held by or otherwise associated with the gamer. The location is determined from data comprising a three dimensional position and an orientation of a portion of a player in a three dimensional space associated with a computerized game. The facing and rotation of the device is determined as a function of both the location of the device and the orientation of the device. The orientation may be determined by data from motion sensors in or on the device. Example apparatus and methods control the computerized game based, at least in part, on the position of the device, the facing of the device, and the rotation of the device.
    Type: Application
    Filed: June 10, 2013
    Publication date: December 11, 2014
    Inventors: Eric Langlois, Ed Pinto, Marcelo Lopez Ruiz, Todd Manion, Zsolt Mathe
  • Patent number: 8375018
    Abstract: Techniques for exchanging data are provided herein. An “open” data type is established on a computer system to define the structure of data. The open data type includes one or more predefined properties, and enables one or more extension properties to be optionally included. Data that is defined according to the open data type includes data values for the predefined properties, and may optionally include data values for extension properties. A second computer system may consider the extension properties to be extension properties or predefined properties of a data type known at the second computer system. In this manner, the type system that is used to exchange data between nodes need not necessarily be commonly known among the nodes, and/or may be dynamically modified, even for a particular data instance. Furthermore, queries may be performed against the data that query against the predefined properties and/or extension properties.
    Type: Grant
    Filed: June 12, 2009
    Date of Patent: February 12, 2013
    Assignee: Microsoft Corporation
    Inventors: Pablo Castro, Andrew Conrad, Michael Flasko, Pratik Patel, Subramanian Muralidhar, Marcelo Lopez Ruiz
  • Publication number: 20120066554
    Abstract: Determining if access should be granted to a data source. A method includes determining resource usage cost of performing an operation on a data source. The method further includes determining if the resource usage cost exceeds a predetermined threshold. When the resource usage cost exceeds a predetermined threshold, the operation is rejected.
    Type: Application
    Filed: September 9, 2010
    Publication date: March 15, 2012
    Applicant: Microsoft Corporation
    Inventor: Marcelo Lopez Ruiz
  • Publication number: 20100228749
    Abstract: Techniques for exchanging data are provided herein. An “open” data type is established on a computer system to define the structure of data. The open data type includes one or more predefined properties, and enables one or more extension properties to be optionally included. Data that is defined according to the open data type includes data values for the predefined properties, and may optionally include data values for extension properties. A second computer system may consider the extension properties to be extension properties or predefined properties of a data type known at the second computer system. In this manner, the type system that is used to exchange data between nodes need not necessarily be commonly known among the nodes, and/or may be dynamically modified, even for a particular data instance. Furthermore, queries may be performed against the data that query against the predefined properties and/or extension properties.
    Type: Application
    Filed: June 12, 2009
    Publication date: September 9, 2010
    Applicant: MICROSOFT CORPORATION
    Inventors: Pablo Castro, Andrew Conrad, Michael Flasko, Pratik Patel, Subramanian Muralidhar, Marcelo Lopez Ruiz
  • Publication number: 20090210400
    Abstract: Aspects of the subject matter described herein relate to translating an identifier in a request into a data structure. In aspects, a client sends a data access request that includes a URI formatted according to the HTTP protocol. The data access request may include a request to create, change, retrieve, or delete one or more resources. The URI is received by a server that has components to translate the URI into a data structure that defines one or more resources indicated by the URI. This data structure is passed to a data source adapter that translates the data structure into operations used to access data on the data source associated with the data source adapter. There may be a plurality of data source adapters with each data source adapter structured to access data on a particular data source using the data structure to define the resources to access.
    Type: Application
    Filed: February 15, 2008
    Publication date: August 20, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Pablo Martin Castro, Anders Hejlsberg, Nikhil Kothari, Marcelo Lopez Ruiz, Michael Justin Flasko, Pratik Patel