typeの分布にCPUの種類によって違う認識可能なパターンに一致するなら分岐が有利かもしれない
typeの分布に連続性があるなら関数テーブルが有利かもしれない
その例のようにtypeとの対応が固定なら分岐しないという手もある
return *cPtr(array[idxtbl[type][0]], array[idxtbl[type][1]] , array[idxtbl[type][2]], array[idxtbl[type][3]]);