Transactional execution branch indications
First Claim
Patent Images
1. A method of providing diagnostic information on transaction aborts, the method comprising:
- executing a transaction, the transaction effectively delaying committing transactional stores to main memory until completion of a selected transaction;
based on executing the transaction, determining whether the transaction includes one or more branching instructions;
based on determining the transaction includes one or more branching instructions, setting one or more indicators corresponding to the one or more branching instructions, wherein an indicator corresponds to a branching instruction and indicates whether a branch was taken by the branching instruction, wherein the setting of the indicator includes setting the indicator to a first value based on the branching instruction corresponding to the indicator taking a branch, and setting the indicator to a second value based on the branching instruction corresponding to the indicator not taking the branch;
determining that the transaction has aborted; and
based on determining the transaction has aborted, storing the one or more indicators in a transaction diagnostic block (TDB) associated with the transaction, wherein the transaction diagnostic block provides a branch history that indicates which branching instructions have taken the branch and which branching instructions have not taken the branch during a transactional execution mode that includes the transaction.
1 Assignment
0 Petitions
Accused Products
Abstract
Transactional execution branch indications are placed into one or more transaction diagnostic blocks when a transaction is aborted. Each branch indication specifies whether a branch was taken, as a result of executing a branch instruction within the transaction. As the transaction executes and a branch instruction is encountered, a branch indication is set in a vector indicating whether the branch was taken. Then, if the transaction aborts, the indicators are stored in one or more transaction diagnostic blocks providing a branch history usable in diagnosing the failure.
-
Citations
11 Claims
-
1. A method of providing diagnostic information on transaction aborts, the method comprising:
-
executing a transaction, the transaction effectively delaying committing transactional stores to main memory until completion of a selected transaction; based on executing the transaction, determining whether the transaction includes one or more branching instructions; based on determining the transaction includes one or more branching instructions, setting one or more indicators corresponding to the one or more branching instructions, wherein an indicator corresponds to a branching instruction and indicates whether a branch was taken by the branching instruction, wherein the setting of the indicator includes setting the indicator to a first value based on the branching instruction corresponding to the indicator taking a branch, and setting the indicator to a second value based on the branching instruction corresponding to the indicator not taking the branch; determining that the transaction has aborted; and based on determining the transaction has aborted, storing the one or more indicators in a transaction diagnostic block (TDB) associated with the transaction, wherein the transaction diagnostic block provides a branch history that indicates which branching instructions have taken the branch and which branching instructions have not taken the branch during a transactional execution mode that includes the transaction. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
Specification