Legal claims defining the scope of protection, as filed with the USPTO.
1. A computer-implemented method, comprising: inserting predetermined code pieces before existing code segments of source code, wherein the existing code segments of the source code are configured to, based on the insertions, print function information about associated test cases upon the associated test cases being run; running the associated test cases; subsequent to a first change being made to a function of the source code, determining a prioritized subset of the associated test cases, wherein the first change is made in a prolog of the function of the source code; and running the prioritized subset of the associated test cases.
2. The computer-implemented method of claim 1, further comprising: generating a map recipe based on the function information; updating the map recipe in response to the prioritized subset of the associated test cases being run; and using the updated map recipe to determine a next prioritized subset of the associated test cases to run.
3. The computer-implemented method of claim 2, wherein the first change includes adding a prolog code piece in the prolog of the function of the source code, wherein a second change includes adding an epilog code piece in an epilog of the function of the source code, and wherein a third change includes inserting basic block code pieces in and/or ahead of basic blocks of the function of the source code.
4. The computer-implemented method of claim 3, wherein the function of the source code is an existing function of the source code, and wherein the prioritized subset of the associated test cases are test cases that are identified in the map recipe.
5. The computer-implemented method of claim 1, wherein the function of the source code is a new function of the source code, and further comprising: identifying a caller of the new function of the source code by performing a static code analysis until all possible callers are in a map recipe based on function information; and identifying the associated test cases in the map recipe, wherein the prioritized subset of the associated test cases are test cases that are identified in the map recipe.
6. The computer-implemented method of claim 1, wherein the function information returned about the associated test cases is selected from the group consisting of: an essential basic block, a call stack, and a count that the essential basic block is invoked.
7. The computer-implemented method of claim 1, wherein the insertions include the predetermined code pieces being inserted ahead of associated existing basic blocks of the source code such that the predetermined code pieces are positioned to be executed before the associated existing basic blocks of the source code during running of the associated test cases, and wherein the predetermined code pieces and the associated existing basic blocks of the source code are positioned in an alternating pattern within the source code as a result of the insertions.
8. The computer-implemented method of claim 1, further comprising: running a remainder of the associated test cases after running the prioritized subset of the associated test cases.
9. A computer program product, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions readable and/or executable by a computer to cause the computer to: insert predetermined code pieces before existing code segments of source code, wherein the existing code segments of the source code are configured to, based on the insertions, print function information about associated test cases upon the associated test cases being run; run the associated test cases; subsequent to a first change being made to a function of the source code, determine a prioritized subset of the associated test cases, wherein the first change is made in a prolog of the function of the source code; and run the prioritized subset of the associated test cases.
10. The computer program product of claim 9, the program instructions readable and/or executable by the computer to further cause the computer to: run a remainder of the associated test cases after running the prioritized subset of the associated test cases.
11. The computer program product of claim 10, the program instructions readable and/or executable by the computer to further cause the computer to: generate a map recipe based on the function information; update the map recipe in response to the prioritized subset of the associated test cases being run; and use the updated map recipe to determine a next prioritized subset of the associated test cases to run.
12. The computer program product of claim 11, wherein the first change includes adding a prolog code piece in the prolog of the function of the source code, wherein a second change includes adding an epilog code piece in an epilog of the function of the source code, and wherein a third change includes inserting basic block code pieces in and/or ahead of basic blocks of the function of the source code.
13. The computer program product of claim 9, wherein the function of the source code is a new function of the source code, and the program instructions readable and/or executable by the computer to further cause the computer to: identify a caller of the new function of the source code by performing a static code analysis until all possible callers are in a map recipe based on function information; and identify the associated test cases in the map recipe, wherein the prioritized subset of the associated test cases are test cases that are identified in the map recipe.
14. The computer program product of claim 9, wherein the function information returned about the associated test cases is selected from the group consisting of: an essential basic block, a call stack, and a count that the essential basic block is invoked.
15. The computer program product of claim 9, wherein the insertions include the predetermined code pieces being inserted ahead of associated existing basic blocks of the source code such that the predetermined code pieces are positioned to be executed before the associated existing basic blocks of the source code during running of the associated test cases, and wherein the predetermined code pieces and the associated existing basic blocks of the source code are positioned in an alternating pattern within the source code as a result of the insertions.
16. A system, comprising: a processor; and logic integrated with the processor, executable by the processor, or integrated with and executable by the processor, the logic being configured to: insert predetermined code pieces before existing code segments of source code, wherein the existing code segments of the source code are configured to, based on the insertions, print function information about associated test cases upon the associated test cases being run; run the associated test cases; subsequent to a first change being made to a function of the source code, determine a prioritized subset of the associated test cases, wherein the first change is made in a prolog of the function of the source code; and run the prioritized subset of the associated test cases.
17. The system of claim 16, the logic being further configured to: run a remainder of the associated test cases after running the prioritized subset of the associated test cases.
18. The system of claim 17, the logic being further configured to: generate a map recipe based on the function information; update the map recipe in response to the prioritized subset of the associated test cases being run; and use the updated map recipe to determine a next prioritized subset of the associated test cases to run.
19. The system of claim 16, wherein the first change includes adding a prolog code piece in the prolog of the function of the source code, wherein a second change includes adding an epilog code piece in an epilog of the function of the source code, and wherein a third change includes inserting basic block code pieces in and/or ahead of basic blocks of the function of the source code.
Unknown
September 9, 2025
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.