Method and system using hardware assistance for instruction tracing by revealing executed opcode or instruction
First Claim
1. A method for processing an instruction within a processor, the method comprising:
- executing an instruction within the processor; and
in response to completion of the executed instruction, automatically writing by the processor a copy of the executed instruction or an opcode of the executed instruction to a register within the processor.
1 Assignment
0 Petitions
Accused Products
Abstract
A method, system, apparatus, and computer program product is presented for assisting instruction tracing operations. A mechanism is provided within the processor for revealing the most recently executed instruction. After the instruction is completed, the opcode of the instruction or the entire instruction is revealed in one of a variety of manners, such as by writing the opcode or instruction to a register that may be read by application-level code. Alternatively, a series of instructions may be stored in a trace buffer within the processor upon the completion of each instruction. In another alternative, the size and address of a trace buffer in memory may be placed into configuration registers, and a series of instructions may be stored in the trace buffer after the completion of each instruction. The tracing operation for the series of instructions may be qualified so that it is performed only in a taken-branch tracing mode.
29 Citations
36 Claims
-
1. A method for processing an instruction within a processor, the method comprising:
-
executing an instruction within the processor; and
in response to completion of the executed instruction, automatically writing by the processor a copy of the executed instruction or an opcode of the executed instruction to a register within the processor. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for processing an instruction within a processor, the method comprising:
-
executing an instruction within the processor; and
in response to completion of the executed instruction, automatically writing by the processor a copy of the executed instruction or an opcode of the executed instruction to a memory buffer. - View Dependent Claims (9, 10, 11, 12)
-
-
13. A processor that performs operations specified by instructions fetched from a memory, the processor comprising:
-
means for fetching instructions from memory;
means for executing an instruction within the processor; and
means for automatically writing by the processor a copy of the executed instruction or an opcode of the executed instruction to a register within the processor in response to completion of the executed instruction. - View Dependent Claims (14, 15, 16, 17, 18, 19)
-
-
20. A processor that performs operations specified by instructions fetched from a memory, the processor comprising:
-
means for fetching instructions from memory;
means for executing an instruction within the processor; and
means for automatically writing by the processor a copy of the executed instruction or an opcode of the executed instruction to a memory buffer in response to completion of the executed instruction. - View Dependent Claims (21, 22, 23, 24)
-
-
25. A computer program product in a computer-readable medium for use in a processor, the computer program product comprising:
-
means for executing an instruction within the processor; and
means for automatically writing by the processor a copy of the executed instruction or an opcode of the executed instruction to a register within the processor in response to completion of the executed instruction. - View Dependent Claims (26, 27, 28, 29, 30, 31)
-
-
32. A computer program product in a computer-readable medium for use in a processor, the computer program product comprising:
-
means for executing an instruction within the processor; and
means for automatically writing by the processor a copy of the executed instruction or an opcode of the executed instruction to a memory buffer in response to completion of the executed instruction. - View Dependent Claims (33, 34, 35, 36)
-
Specification