Post-register allocation profile directed instruction scheduling
First Claim
1. A computer implemented method for selective instruction scheduling, the computer implemented method comprising:
- determining whether a region of code exceeds a modification threshold after performing register allocation on the region of code;
responsive to determining that the region of code exceeds the modification threshold, marking the region of code as a modified region of code;
responsive to marking the region of code as the modified region of code, determining whether the region of code exceeds an execution threshold; and
responsive to determining that the region of code is marked as a modified region of code and determining that the region of code exceeds the execution threshold, performing post-register allocation instruction scheduling on the region of code.
5 Assignments
0 Petitions
Accused Products
Abstract
A computer implemented method, system, and computer usable program code for selective instruction scheduling. A determination is made whether a region of code exceeds a modification threshold after performing register allocation on the region of code. The region of code is marked as a modified region of code in response to the determination that the region of code exceeds the modification threshold. A determination is made whether the region of code exceeds an execution threshold in response to the determination that the region of code is marked as a modified region of code. Post-register allocation instruction scheduling is performed on the region of code in response to the determination that the region of code is marked as a modified region of code and the determination that the region of code exceeds the execution threshold.
-
Citations
20 Claims
-
1. A computer implemented method for selective instruction scheduling, the computer implemented method comprising:
-
determining whether a region of code exceeds a modification threshold after performing register allocation on the region of code;
responsive to determining that the region of code exceeds the modification threshold, marking the region of code as a modified region of code;
responsive to marking the region of code as the modified region of code, determining whether the region of code exceeds an execution threshold; and
responsive to determining that the region of code is marked as a modified region of code and determining that the region of code exceeds the execution threshold, performing post-register allocation instruction scheduling on the region of code. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A system comprising:
-
a processor for executing an operating system and a dynamic compiler; and
a storage operably coupled to the processor for storing the operating system and dynamic compiler wherein the operating system and dynamic compiler may be loaded into a main memory for execution by the processor wherein the dynamic compiler determines whether a region of code exceeds a modification threshold after performing register allocation on the region of code, marks the region of code as a modified region of code in response to a determination that the region of code exceeds a modification threshold, determines whether the region of code exceeds an execution threshold in response to determining that the region of code is marked as a modified region of code, and performs post-register allocation instruction scheduling on the modified region of code in response to the determination that the region of code is marked as a modified region of code and that the region of code exceeds the execution threshold. - View Dependent Claims (13, 14, 15)
-
-
16. A computer program product comprising a computer usable medium including computer usable program code for selective instruction scheduling, said computer program product including:
-
computer usable program code for determining whether a region of code exceeds a modification threshold after performing register allocation on the region of code;
computer usable program code responsive to determining the region of code exceeds a modification threshold, for marking the region of code as a modified region of code;
computer usable program code responsive to determining that the region of code has been marked as a modified region of code, for determining whether a region of code exceeds an execution threshold; and
computer usable program code responsive to the region of code being marked as a modified region of code and determining that the region of code exceeds the execution threshold, for performing post-register allocation instruction scheduling on the modified region of code. - View Dependent Claims (17, 18, 19, 20)
-
Specification