お客様の中にコンパイラに詳しい方はいらっしゃいませんか?

まあ聞くまでもなく,見てる人たちの中に確実に数人はいるのは知ってるけど….

C言語でswitch文を書いた時って,コンパイラを通すと

  • caseの数が少ない場合:バイナリツリーを作ってIF文(というか条件分岐)を連続させる
  • caseの数が多い場合:テーブルを作ってジャンプ

と言う風になるという認識なんだけどあってますか?というかコンパイラによって違うだろうけど,GCCだとどうなんですかね.バージョンによっても違いそうだけど;;
さらに,caseの数がそれなりに多いんだけど数字がとびとびで,連続したテーブルを作るとテーブルサイズがでかくなる場合はハッシュで…とかいうのもなんか記憶にあるんですが,イマイチ覚えてません.
おしえてえらいひとー
詳しい方…っていうかそんなに詳しくない方でも知ってるレベルの話かなぁ…とかオモタ

自分で色々試してアセンブリ読めっていうのはナシでw そんな暇ないwww まあえらいひとが誰もいなさそうなら暇になったら調べますけど….
昨日は研究室の飲み会帰りで家に着いたのが25時過ぎ,寝たのが26時ごろ,そんでもって今日は6時半に起きて8時半定時には会社について,(特勤届のいらない)限界の21時半まで仕事してたし….明日はスーパー定時退社日(給料日)なので残業できないし,木曜日はまた限界までいくだろうし,金曜日は部の打ち上げの幹事になってるので残業できないし….で,仕事が金曜日締め切り.…どうすればいいんだ.
っていうか特許は今期無理なことになった…俺の査定オワタ\(^o^)/