paper

Clustering case statements for indirect branch predictors

arXiv:1910.02351

Abstract

We present an O(nlogn) algorithm to compile a switch statement into jump tables. To generate jump tables that can be efficiently predicted by current hardware branch predictors, we added an upper bound on the number of entries for each table. This modification of the previously best known algorithm reduces the complexity from O(n^2) to O(nlogn).