Patent ID: 9182956
Filing Date: 2015-11-10
Classification: G06F

Abstract:
1. A computer-implemented method performed by a computer having a processor and memory, the method comprising: obtaining a program code, the program code comprising a conditional control flow program construct, which conditional control flow program construct when read by a target processor, causes the target processor to select a control flow path for execution between at least a first and a second control flow paths, wherein said selection is based on an evaluation of a condition of the conditional control flow program construct; determining a likelihood of the first control flow path to be taken during execution; in response to the likelihood of the first control flow path to be taken during execution exceeding a predetermined threshold of at least 75%, replacing the conditional control flow program construct with a transaction-based control flow program construct, which when read by the target processor is operative to cause the target processor to commence a transaction, the transaction configured to execute the first control flow path; wherein the transaction-based control flow program construct is operative to cause the target processor to execute the conditional control flow program construct in case the transaction is rolled back; wherein in case the condition is evaluated to a predetermined value the first control flow path is selected; and wherein the transaction-based control flow program construct comprises a transaction instruction, the transaction instruction when read by the target processor is configured to commence a transaction, the transaction comprising: