1. A method for managing branch instructions in an emulation environment that is executing a program, the method comprising the steps of: populating a plurality of entries in a branch target buffer residing within an emulated environment in which the program is executing, each of the entries comprising an instruction address and a target address of a branch instruction of the program; when an indirect branch instruction of the program is encountered, analyzing, by a processor, one of the entries in the branch target buffer to determine if the instruction address of the one entry is associated with a target address of the indirect branch instruction; and if the instruction address of the one entry is associated with the target address of the indirect branch instruction, branching to the target address of the one entry.