Multiway branch
Multiway branch is the change to a program's control flow based upon a value matching a selected criteria. It is a form of conditional statement. A multiway branch is often the most efficient method of passing control to one of a set of program labels, especially if an index has been created beforehand from the raw data. Alternatives. A multiway branch can, frequently, be replaced with an efficient indexed table lookup (using the data value itself or a calculated derivative of the data value, as the index of an array) ""...the implementation of a switch statement has  been equated with that of a multiway branch. However, for many uses of the switch statement in real code, it is possible to avoid branching altogether and replace the switch with one or more table look-ups. For example,the codice_1 example [presented earlier] can be implemented as the following:[C example]"""A Superoptimizer Analysis of Multiway Branch Code Generation" by Roger Anthony Sayle can be replaced, using a "safe-hashing" technique, with - or it can be replaced, using an index mapping table lookup, with -