---
type: article
title: CPUを差別するコンパイラ
timestamp: 2005-07-10T00:00:00Z
profile: sorane-okf/0.1
noFontEmbedding: true
---

# CPUを差別するコンパイラ

<p>昔、DR-<a class="keyword" href="http://d.hatena.ne.jp/keyword/DOS">DOS</a>上で<a class="keyword" href="http://d.hatena.ne.jp/keyword/Windows">Windows</a>を実行すると警告ダイアログを出すという話と似ているけど、挙動も変わる分ちょっと悪質かも。ただ、CPU拡販のために<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B3%A5%F3%A5%D1%A5%A4%A5%E9">コンパイラ</a>開発に投資しているとして、他社のCPUでまで最適化したコードを吐く義理はないと思うし、パイプラインの深い<a class="keyword" href="http://d.hatena.ne.jp/keyword/Pentium4">Pentium4</a>と比べて<a class="keyword" href="http://d.hatena.ne.jp/keyword/Athlon">Athlon</a>は<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B3%A5%F3%A5%D1%A5%A4%A5%E9">コンパイラ</a>がお馬鹿でもそこそこ性能が出るだろうけど、ターゲットCPUが同じなのに<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B3%A5%F3%A5%D1%A5%A4%A5%E9">コンパイラ</a>を起動するホストのCPUによって吐くオブジェクトに違いが出るのだとしたら、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B3%A5%F3%A5%D1%A5%A4%A5%E9">コンパイラ</a>の挙動としてはどうかと思う。</p>
<blockquote cite="http://www.geocities.jp/andosprocinfo/wadai05/20050709.htm" title="最近の話題 2005年7月09日"><p><a class="keyword" href="http://d.hatena.ne.jp/keyword/Intel">Intel</a>の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B3%A5%F3%A5%D1%A5%A4%A5%E9">コンパイラ</a>はCPUIDを見て，<a class="keyword" href="http://d.hatena.ne.jp/keyword/Intel">Intel</a> CPUだと最適化を頑張ったコードを実行する</p>
</blockquote>
