1. A computer implemented method for branch handling for transaction abort, the method comprising: detecting a beginning of a current execution of a transaction, the transaction being one of a plurality of transactions in a lock elision transaction system; based on detecting the beginning of the transaction: disabling speculative execution based on branch prediction of an initial branch instruction of the transaction, determining whether the transaction is an out-of-line transaction or an in-line transaction, wherein the initial branch instruction branches to two paths, wherein the initial branch instruction comprises a mask branch instruction that is evaluated based on a condition code of the transaction, the condition code indicates whether the current execution of the transaction is a retry after abort, wherein a first path of the two possible paths comprises an abort handler, a second path of the two paths comprises a work section of the transaction, and wherein the abort handler sets a lock for the transaction, wherein based on the in-line abort type transaction being determined, the abort handler is executed if the mask branch instruction is not taken, and only speculatively executing the mask branch instruction based on the mask branch instruction being predicted taken to prevent a branch abort instruction from being speculatively executed, wherein based on an out-of-line abort type transaction being determined, the abort handler is executed based on the mask branch instruction being taken, and the branch abort instructions are not speculatively executed; disabling updating of a history table for the initial branch instruction based on the the mask branch instruction not having an entry in the history table; updating the history table for the initial branch instruction based on the make branch being resolved as taken, and disabling the updating of the history table based on the mask branch instruction having an entry in the history table.