System, method, and computer program product for removing a synchronization statement
First Claim
Patent Images
1. A method executed by a processor, the method comprising:
- identifying a first synchronization statement included in program code;
traversing backwards from the first synchronization statement toward a beginning of the program code;
pushing each traversed statement of the program code onto a stack until a first occurrence of;
a second synchronization statement included in the program code is reached, andthe beginning of the program code is reached;
pushing the second synchronization statement onto the stack when the second synchronization statement is reached;
analyzing the stack; and
removing the first synchronization statement from the computer program based on the analysis of the stack, including;
removing first synchronization statement from the program code when;
it is determined that the second synchronization statement is included in the stack and it is determined that the first synchronization statement is redundant to the second synchronization statement.
1 Assignment
0 Petitions
Accused Products
Abstract
A system, method, and computer program product are provided for removing a synchronization statement. In use, synchronization statements are identified. Additionally, the synchronization statements are analyzed. Furthermore, the synchronization statements are removed based on the analysis.
18 Citations
21 Claims
-
1. A method executed by a processor, the method comprising:
-
identifying a first synchronization statement included in program code; traversing backwards from the first synchronization statement toward a beginning of the program code; pushing each traversed statement of the program code onto a stack until a first occurrence of; a second synchronization statement included in the program code is reached, and the beginning of the program code is reached; pushing the second synchronization statement onto the stack when the second synchronization statement is reached; analyzing the stack; and removing the first synchronization statement from the computer program based on the analysis of the stack, including; removing first synchronization statement from the program code when; it is determined that the second synchronization statement is included in the stack and it is determined that the first synchronization statement is redundant to the second synchronization statement.
-
-
2. A system, comprising:
-
a processor for; identifying a first synchronization statement included in program code; traversing backwards from the first synchronization statement toward a beginning of the program code; pushing each traversed statement of the program code onto a stack until a first occurrence of; a second synchronization statement included in the program code is reached, and the beginning of the program code is reached; pushing the second synchronization statement onto the stack when the second synchronization statement is reached; analyzing the stack; and removing the first synchronization statement from the computer program based on the analysis of the stack, including; removing the first synchronization statement from the program code when; it is determined that the second synchronization statement is included in the stack and it is determined that the first synchronization statement is redundant to the second synchronization statement. - View Dependent Claims (3)
-
-
4. A computer program product embodied on a non-transitory computer readable medium, comprising:
-
computer code for identifying a first synchronization statement included in program code; computer code for traversing backwards from the first synchronization statement toward a beginning of the program code; computer code for pushing each traversed statement of the program code onto a stack until a first occurrence of; a second synchronization statement included in the program code is reached, and the beginning of the program code is reached; computer code for pushing the second synchronization statement onto the stack when the second synchronization statement is reached; computer code for analyzing the stack; and computer code for removing the first synchronization statement from the computer program based on the analysis of the stack, including; removing the first synchronization statement from the program code when; it is determined that the second synchronization statement is included in the stack and it is determined that the first synchronization statement is redundant to the second synchronization statement. - View Dependent Claims (5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21)
-
Specification