Patents by Inventor Bogdan Florin Ditu

Bogdan Florin Ditu 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: 9940267
    Abstract: A processing device includes a target processor instruction memory to store a plurality of target processor instructions that include a plurality of global memory access instructions. The processing device further includes a compiler to communicate with the target processor instruction memory, the compiler including: a global variable candidate detection module to identify a global memory access instruction within a set of code regions that use a set of global variable candidates to access a global memory, and a memory access optimization module to modify the global memory access instruction, wherein the modified global memory access instruction utilizes an unused base pointer register of a set of unused base pointer register candidates within the set of code regions, a global variable from the set of global variable candidates to be used as a base address, and an offset relative to the base address to access the global memory.
    Type: Grant
    Filed: September 16, 2016
    Date of Patent: April 10, 2018
    Assignee: NXP USA, Inc.
    Inventors: Ciprian Arbone, Bogdan Florin Ditu
  • Publication number: 20170337142
    Abstract: A processing device includes a target processor instruction memory to store a plurality of target processor instructions that include a plurality of global memory access instructions. The processing device further includes a compiler to communicate with the target processor instruction memory, the compiler including: a global variable candidate detection module to identify a global memory access instruction within a set of code regions that use a set of global variable candidates to access a global memory, and a memory access optimization module to modify the global memory access instruction, wherein the modified global memory access instruction utilizes an unused base pointer register of a set of unused base pointer register candidates within the set of code regions, a global variable from the set of global variable candidates to be used as a base address, and an offset relative to the base address to access the global memory.
    Type: Application
    Filed: September 16, 2016
    Publication date: November 23, 2017
    Inventors: Ciprian Arbone, Bogdan Florin Ditu
  • Patent number: 9436450
    Abstract: A method and apparatus for optimizing computer program code. The method comprises identifying at least one set of candidate instructions within the computer program code, each candidate instruction comprising an instruction for writing a constant value to memory and the at least one set comprising a plurality of candidate instructions. The method further comprises computing an aggregate constant value for the at least one set of candidate instructions, and replacing the at least one set of candidate instructions with at least one instruction for writing the aggregate constant value to memory.
    Type: Grant
    Filed: November 3, 2014
    Date of Patent: September 6, 2016
    Assignee: FREESCALE SEMICONDUCTOR, INC.
    Inventors: Mihai Daniel Oprea, Ciprian Arbone, Bogdan Florin Ditu
  • Publication number: 20160062751
    Abstract: A method and apparatus for optimising computer program code. The method comprises identifying at least one set of candidate instructions within the computer program code, each candidate instruction comprising an instruction for writing a constant value to memory and the at least one set comprising a plurality of candidate instructions. The method further comprises computing an aggregate constant value for the at least one set of candidate instructions, and replacing the at least one set of candidate instructions with at least one instruction for writing the aggregate constant value to memory.
    Type: Application
    Filed: November 3, 2014
    Publication date: March 3, 2016
    Applicant: FREESCALE SEMICONDUCTOR, INC.
    Inventors: MIHAI DANIEL OPREA, CIPRIAN ARBONE, BOGDAN FLORIN DITU
  • Patent number: 8739144
    Abstract: A compiler and method for compiling source code comprising: a library of code patterns and control flow information for each code pattern, wherein each code pattern comprises one or more variable; and a processor arranged to: evaluate the control flow of an expression in the source code, wherein the expression comprises one or more variable, match the expression to one of the code patterns in the library based on the evaluated control flow information, assign value numbers to the one or more variable within the expression, determine if the expression and the matched code pattern are equivalent based on the assigned value numbers, and replace the expression in the source code with a replacement expression if the expression and the matched code pattern are equivalent.
    Type: Grant
    Filed: December 17, 2008
    Date of Patent: May 27, 2014
    Assignee: Freescale Semiconductor, Inc.
    Inventors: Mihai Emanuel Stoicescu, Bogdan Florin Ditu, Mihail Popa
  • Publication number: 20110225572
    Abstract: A compiler and method for compiling source code comprising: a library of code patterns and control flow information for each code pattern, wherein each code pattern comprises one or more variable; and a processor arranged to: evaluate the control flow of an expression in the source code, wherein the expression comprises one or more variable, match the expression to one of the code patterns in the library based on the evaluated control flow information, assign value numbers to the one or more variable within the expression, determine if the expression and the matched code pattern are equivalent based on the assigned value numbers, and replace the expression in the source code with a replacement expression if the expression and the matched code pattern are equivalent.
    Type: Application
    Filed: December 17, 2008
    Publication date: September 15, 2011
    Inventors: Mihai Emanuel Stoicescu, Bogdan Florin Ditu, Mihail Popa