INSTRUCTION-SET SIMULATOR AND ITS SIMULATOR GENERATION METHOD
First Claim
Patent Images
1. An instruction-set simulator which generates a simulator executable program by converting a binary executable program into a source program, comprising:
- a subroutine detection means that detects subroutines included in the binary executable program,a branch instruction detection means that detects the branch instructions in the binary executable program which have a branch target address,a subroutine-call instruction detection means that detects subroutine-call instructions in the binary executable program which have a subroutine-call target address,a subroutine source program output means that generates the source program for each subroutine detected by the subroutine detection means,a label annotation means that annotates a label indicating the branch target address at a branch target instruction in the generated source program,an unconditional branch instruction output means that converts each branch instruction in the binary executable program into an unconditional branch instruction in the generated source program which branches to the labeled branch target instruction in the generated source program, anda subroutine-call instruction output means that converts each subroutine-call instruction in the binary executable program into a subroutine-call instruction in the generated source program.
1 Assignment
0 Petitions
Accused Products
Abstract
Providing an instruction-set simulator and a method for generating such simulator that is capable or guaranteeing the full restoration of source program file from the binary executable program, in which the generated source program is easy to analyze, and the simulation speed is considerably fast.
-
Citations
13 Claims
-
1. An instruction-set simulator which generates a simulator executable program by converting a binary executable program into a source program, comprising:
-
a subroutine detection means that detects subroutines included in the binary executable program, a branch instruction detection means that detects the branch instructions in the binary executable program which have a branch target address, a subroutine-call instruction detection means that detects subroutine-call instructions in the binary executable program which have a subroutine-call target address, a subroutine source program output means that generates the source program for each subroutine detected by the subroutine detection means, a label annotation means that annotates a label indicating the branch target address at a branch target instruction in the generated source program, an unconditional branch instruction output means that converts each branch instruction in the binary executable program into an unconditional branch instruction in the generated source program which branches to the labeled branch target instruction in the generated source program, and a subroutine-call instruction output means that converts each subroutine-call instruction in the binary executable program into a subroutine-call instruction in the generated source program. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method for generating a simulator executable program by an instruction-set simulator for converting a binary executable program into a source program to generate the simulator executable program,
wherein the instruction-set simulator comprises a subroutine detection means, a branch instruction detection means, a subroutine-call instruction detection means, a subroutine source program output means, a label annotation means, an unconditional branch instruction output means, and a subroutine-call instruction source program output means, the method comprising steps of: -
detecting, by the subroutine detection means, subroutines included in the binary executable program. detecting, by the branch instruction detection means, the branch instructions in the binary executable program which have a branch target address, detecting, by the subroutine-call instruction detection means, subroutine-call instructions in the binary executable program which have a subroutine-call target address, generating, by the subroutine source program output means, the source program for each subroutine detected by the subroutine detection means, annotating, by the label annotation means, a label indicating the branch target address at a branch target instruction in the generated source program, converting, by the unconditional branch instruction output means, each branch instruction in the binary executable program into an unconditional branch instruction in the generated source program which branches to the labeled branch target instruction in the generated source program, and converting, by the subroutine-call instruction source program output means, each subroutine-call instruction in the binary executable program into a subroutine-call instruction in the generated source program. - View Dependent Claims (10, 11, 12, 13)
-
Specification