Code generation method, and information processing apparatus

US9256437B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9256437-B2
Application numberUS-201313783906-A
CountryUS
Kind codeB2
Filing dateMar 4, 2013
Priority dateMar 29, 2012
Publication dateFeb 9, 2016
Grant dateFeb 9, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A computer-readable recording medium having stored therein a program for causing a computer to execute a digital signature process includes determining that a first specific instruction for executing parallel calculations of the same type, each calculation operating on a different piece of data, is generated by combining first and second instructions included in a first code, retrieving, from the first code, a third instruction for calculating data referenced by the first instruction and a fourth instruction for calculating data referenced by the second instruction, and selecting the third and fourth instructions as candidates of instructions to be combined with each other preferentially to generate a second specific instruction which is different from the first specific instruction.

First claim

Opening claim text (preview).

What is claimed is: 1. A code generation method, comprising: determining that a first specific instruction for executing parallel calculations of the same type, each calculation operating on a different piece of data, is generated by combining first and second instructions included in a first code, the first specific instruction using a first register to store the different pieces of data; retrieving, from the first code by tracing the first code from the first and second instructions to a beginning, a third instruction for calculating data referenced by the first instruction and a fourth instruction for calculating data referenced by the second instruction; selecting the third and fourth instructions as candidates of instructions to be combined with each other to generate a second specific instruction, which is different from the first specific instruction and is to be executed before the first specific instruction, the second specific instruction using a second register to store an execution result of the second specific instruction; determining whether to combine the third and fourth instructions to generate the second specific instruction by determining whether data included in the second register is to be transferred to the first register when the first specific instruction is to be executed after execution of the second specific instruction; and determining a combination of the first and second instructions by scanning an instruction queue included in the first code from the end to the beginning of the instruction queue. 2. A non-transitory computer-readable recording medium having stored therein a program for causing a computer to execute a process comprising: determining that a first specific instruction for executing parallel calculations of the same type, each calculation operating on a different piece of data, is generated by combining first and second instructions included in a first code, the first specific instruction using a first register to store the different pieces of data; retrieving, from the first code by tracing the first code from the first and second instructions to a beginning, a third instruction for calculating data referenced by the first instruction and a fourth instruction for calculating data referenced by the second instruction; selecting the third and fourth instructions as candidates of instructions to be combined with each other to generate a second specific instruction, which is different from the first specific instruction and is to be executed before the first specific instruction, the second specific instruction using a second register to store an execution result of the second specific instruction; determining whether to combine the third and fourth instructions to generate the second specific instruction by determining whether data included in the second register is to be transferred to the first register when the first specific instruction is to be executed after execution of the second specific instruction; and determining a combination of the first and second instructions by scanning an instruction queue included in the first code from the end to the beginning of the instruction queue. 3. An information processing apparatus comprising: a memory which stores a program; and a processor which executes, based on the program, a process including: determining that a first specific instruction for executing parallel calculations of the same type, each calculation operating on a different piece of data, is generated by combining first and second instructions included in a first code, the first specific instruction using a first register to store the different pieces of data, retrieving, from the first code by tracing the first code from the first and second instructions to a beginning, a third instruction for calculating data referenced by the first instruction and a fourth instruction for calculating data referenced by the second instruction, selecting the third and fourth instructions as candidates of instructions to be combined with each other to generate a second specific instruction, which is different from the first specific instruction and is to be executed before the first specific instruction, the second specific instruction using a second register to store an execution result of the second specific instruction, determining whether to combine the third and fourth instructions to generate the second specific instruction by determining whether data included in the second register is to be transferred to the first register when the first specific instruction is to be executed after execution of the second specific instruction, and determining a combination of the first and second instructions by scanning an instruction queue included in the first code from the end to the beginning of the instruction queue.

Assignees

Inventors

Classifications

  • Compilation · CPC title

  • G06F9/3887Primary

    controlled by a single instruction for multiple data lanes [SIMD] · CPC title

  • G06F9/3851Primary

    from multiple instruction streams, e.g. multistreaming · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9256437B2 cover?
A computer-readable recording medium having stored therein a program for causing a computer to execute a digital signature process includes determining that a first specific instruction for executing parallel calculations of the same type, each calculation operating on a different piece of data, is generated by combining first and second instructions included in a first code, retrieving, from t…
Who is the assignee on this patent?
Fujitsu Ltd
What technology area does this patent fall under?
Primary CPC classification G06F9/3887. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Feb 09 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).