一昔前は、そこらの商用コンパイラよりも良い最適化をする
といわれたGCCも最近は色あせてきてたけど。。。
待望の新バージョンリリースで巻き返しなるか?
とりあえずインストールしてみよう
祝・GCC 3.0リリース
■ このスレッドは過去ログ倉庫に格納されています
1さあね
NGNGNGNG
>>154 昨日やったら、2.4.19-pre8 も 2.5.15 も途中でこけた。まだ深くは追求していないけど。
NGNG
NGNG
コンパイルエラーでそ>>156
オプション代えれば上手くいく予感
オプション代えれば上手くいく予感
NGNG
2.5.Xはwarningは山盛りでるわ、コンパイルエラーはでてくるわで
なかなか楽しめます: )。簡単な手直しは必須です。
gcc3.1と組み合わせたらそれはそれはハッピーになれるかも(w
やっぱりPC-UNIXはこうでないと!
なかなか楽しめます: )。簡単な手直しは必須です。
gcc3.1と組み合わせたらそれはそれはハッピーになれるかも(w
やっぱりPC-UNIXはこうでないと!
159名無しさん@お腹いっぱい。
NGNG Linuxは開発者多い割に対症療法なんだねえ。
*BSDは、日頃から山ほどwarning optionを付けて、見つかったwarningは
片っ端からつぶしてるもんな。styleにもうるさいし。
どっちをいじるのがハッピーかは、完全に性格によるかもしれない。
*BSDは、日頃から山ほどwarning optionを付けて、見つかったwarningは
片っ端からつぶしてるもんな。styleにもうるさいし。
どっちをいじるのがハッピーかは、完全に性格によるかもしれない。
160デフォルトの名無しさん
NGNG Linux2.5.15をgcc3.0.4でコンパイルして普通に使ってるよ。
新しい機能のthermal_interruptの辺りにバグがあるから
その機能を使わないようにすれば問題なく動く。
新しい機能のthermal_interruptの辺りにバグがあるから
その機能を使わないようにすれば問題なく動く。
161デフォルトの名無しさん
NGNG162名無しさん@お腹いっぱい。
NGNGNGNG
>>162
サンクス
サンクス
NGNG
165名無しさん@お腹いっぱい。
NGNG specsファイルの書き方を説明したサイトないかなー
NGNG
$info gcc
Invoking GCC::Spec Files::
Invoking GCC::Spec Files::
167名無しさん@お腹いっぱい。
NGNG gcc-3.1では -march={pentium2,pentium3,pentium4} なんかが追加されてるけど,
celeronの場合は何を指定するのがベストなのかな? pentium2あたり?
celeronの場合は何を指定するのがベストなのかな? pentium2あたり?
NGNG
169名無しさん@Emacs
NGNG >>167
生成したバイナリに具体的にどんな影響が現われるのか興味深いな・・。
特にpentium2と3。
基本的にはpentium2を指定しておけば間違いないだろう。
あとSocket478用Celeronならpentium4。
それ以外はその時期のCeleronと同時に発表されたプロセッサと同じものを
指定すればよいだろう。
生成したバイナリに具体的にどんな影響が現われるのか興味深いな・・。
特にpentium2と3。
基本的にはpentium2を指定しておけば間違いないだろう。
あとSocket478用Celeronならpentium4。
それ以外はその時期のCeleronと同時に発表されたプロセッサと同じものを
指定すればよいだろう。
NGNG
i386の-marchで何が起こるかはconfig/i386/i386.cのprocessor_alias_table[]を参照しる。
171名無しさん@お腹いっぱい。
NGNG172名無しさん@お腹いっぱい。
NGNG gcc の release plan がかなり変更になった.
gcc 3.1.1 が現地時間で 7/21 に出るけど,この系列は
gcc 3.2.x に名称変更.7/23 に gcc 3.2 が出る予定.
gcc 3.2.x の C++ binary は,gcc 3.1.x の C++ binary と
互換ではないので要注意.
新 branch は gcc 3.3.x になる.
http://gcc.gnu.org/develop.html#future
gcc 3.1.1 が現地時間で 7/21 に出るけど,この系列は
gcc 3.2.x に名称変更.7/23 に gcc 3.2 が出る予定.
gcc 3.2.x の C++ binary は,gcc 3.1.x の C++ binary と
互換ではないので要注意.
新 branch は gcc 3.3.x になる.
http://gcc.gnu.org/develop.html#future
NGNG
もしかして非互換性発覚→急遽3.2ってことなのかな?
NGNG
どっちかっつーと、
ABI変えないとどーしょうもない不都合発覚→3.2にversion bump
てことじゃないかと。
ABI変えないとどーしょうもない不都合発覚→3.2にversion bump
てことじゃないかと。
175名無しさん@XEmacs
NGNGNGNG
にしても GCC3.x は迷走しているなぁ。いったいいつまで 2.95.3 を使いつづけ
なければならないんだろう。
なければならないんだろう。
NGNG
伝統にしたがって3.4まで待つことになるんでは
178名無しさん@お腹いっぱい。
NGNG 3.1.1 まだ〜?
3.2 がもうすぐ出ちゃうよ.
現在 3.1 を使っているけど,3.2 が出たらどうするか考慮中.
C++ binary incompatible ではねぇ.
3.2 がもうすぐ出ちゃうよ.
現在 3.1 を使っているけど,3.2 が出たらどうするか考慮中.
C++ binary incompatible ではねぇ.
NGNG
みんなどんどん使って不具合だしてくれー
NGNG
最適化がVisualC並になるのはいつのことやら・・・
NGNG
3.xの最適化はVisual Cに負けていないという噂は本当ですか?
182名無しさん@お腹いっぱい。
NGNG183名無しさん@お腹いっぱい。
NGNGNGNG
NGNG
あ、gcc2.96だけどね。
NGNG
つーか、gccの最適化がしょぼい(>>180)ということを裏付けるデータあるの?
NGNG
>186 >>184
188名無しさん@お腹いっぱい。
NGNG >>187
VC出てきてないんですけど…
VC出てきてないんですけど…
NGNG
NGNG
>>188
gccが比べるまでもなくしょぼいのはわかりますが何か?
gccが比べるまでもなくしょぼいのはわかりますが何か?
NGNG
i386の事だけ考えればいい商用のコンパイラと、gccを比べるのは川獺。
NGNG
VCって、Windows CE用にmips、arm、shとかもサポートしてるみたいだけど、
この辺の最適化具合はどうなんだろね。
この辺の最適化具合はどうなんだろね。
NGNG
今は知らないが、VC++ってAlpha版、PowerPC版、MIPS版なんてのもあったような。
NGNG
>>193
NTとかビルドするのにも使ってるんだし、そりゃああるだろよ。
NTとかビルドするのにも使ってるんだし、そりゃああるだろよ。
NGNG
http://gcc.gnu.org/ml/gcc/2002-07/msg01120.html 3.1.1 ぷれりりーす
196名無しさん@お腹いっぱい。
NGNG >>189,190
http://www.google.com/search?hl=ja&ie=UTF-8&oe=utf-8&q=compiler+benchmark+gcc+Visual&lr=
辺りみても、benchimarkでしかあり得ないプログラムや
数値計算やCG関係でMMXなんかがうまく使えた時に差がある程度と思うが?
>>191
その影響はpeepholeやinstruction emittingに限られるでしょ?
これがoptimization全体で大きな割合を占めるのはかなり特殊なprogram。
http://www.google.com/search?hl=ja&ie=UTF-8&oe=utf-8&q=compiler+benchmark+gcc+Visual&lr=
辺りみても、benchimarkでしかあり得ないプログラムや
数値計算やCG関係でMMXなんかがうまく使えた時に差がある程度と思うが?
>>191
その影響はpeepholeやinstruction emittingに限られるでしょ?
これがoptimization全体で大きな割合を占めるのはかなり特殊なprogram。
NGNG
>190
そういう人にとっては、ここに来るのは時間の無駄以外のなにものでもないですね。
そういう人にとっては、ここに来るのは時間の無駄以外のなにものでもないですね。
NGNG
gccより遅いコンパイラは全部滅んじゃったからね。
199名無しさん@Emacs
NGNGNGNG
>>196
> benchimarkでしかあり得ないプログラムや
速い遅いを見るのがBenchmarkじゃないの?
> 数値計算やCG関係でMMXなんかがうまく使えた時に差がある程度と思うが?
数値計算やCGって実用域の性能には無関係だと?
VCはMMXの最適化なんてやんないよ。ProcessorPack入れたらInlineで
書けるって程度。VectorCは違うけど。
あのね、すぐWin厨って言わないでUNIXの外の広い世界も
勉強したほうがいいと思うけどな。
例えば同じマシンにKDEとWindows2000入れたらどっちが
さくさく動くと思う?
まぁ、そういうと、そらXがクソ、Qtがトロいせい。Win2000なんて
そもそも不安定だから比較対象にならんとか言い出すんだろうけどさ〜
> benchimarkでしかあり得ないプログラムや
速い遅いを見るのがBenchmarkじゃないの?
> 数値計算やCG関係でMMXなんかがうまく使えた時に差がある程度と思うが?
数値計算やCGって実用域の性能には無関係だと?
VCはMMXの最適化なんてやんないよ。ProcessorPack入れたらInlineで
書けるって程度。VectorCは違うけど。
あのね、すぐWin厨って言わないでUNIXの外の広い世界も
勉強したほうがいいと思うけどな。
例えば同じマシンにKDEとWindows2000入れたらどっちが
さくさく動くと思う?
まぁ、そういうと、そらXがクソ、Qtがトロいせい。Win2000なんて
そもそも不安定だから比較対象にならんとか言い出すんだろうけどさ〜
201名無しさん@お腹いっぱい。
NGNG >>200
比較対象にWindowsを持ってくるのはどうかと思うが、
いままでの*NIXの独善の歩みと言うべき姿勢は、
そろそろ見直される時期に来てるかも。
ソフトウェアの開発モデルとしては機能はしてるが
魅力やスピードが無いと言えるかも。
抽象的ですまんが
比較対象にWindowsを持ってくるのはどうかと思うが、
いままでの*NIXの独善の歩みと言うべき姿勢は、
そろそろ見直される時期に来てるかも。
ソフトウェアの開発モデルとしては機能はしてるが
魅力やスピードが無いと言えるかも。
抽象的ですまんが
NGNG
NGNG
> 例えば同じマシンにKDEとWindows2000入れたらどっちが
> さくさく動くと思う?
cygwinの上でKDE動かした方が遥かに遅かったが、なにか?
> さくさく動くと思う?
cygwinの上でKDE動かした方が遥かに遅かったが、なにか?
NGNG
NGNG
NGNG
207名無しさん@Emacs
NGNG なつだからっていちいち煽りにかっかしてんな。
そうめんみたいに流せ。
そうめんみたいに流せ。
NGNG
ネタにマジレスすると、KDEとWin2000のどちらがサクサク動くか、という点については
コンパイラ云々よりもウィンドウシステムの設計に依存するところが大きいでしょう。
win2kはご存知のとおりカーネル内にグラフィックサブシステムが入ってるから、
かなりの速度がでる。Xは残念ながらオーバーヘッドがでかい。
つーことは、上記のように環境が速度の最大ファクタであるような場面では
コンパイラの最適化能力なんてあんまり目立たない→重要でない
ってなことになっちゃうと思うんだが...
で、未だにコンパイラの速度を競うような場面ってそんなにありますか?
計算屋さんにとっては重要な問題なのかなあ。
ほとんどライブラリに頼ってる気がせんでもないけど。
コンパイラ云々よりもウィンドウシステムの設計に依存するところが大きいでしょう。
win2kはご存知のとおりカーネル内にグラフィックサブシステムが入ってるから、
かなりの速度がでる。Xは残念ながらオーバーヘッドがでかい。
つーことは、上記のように環境が速度の最大ファクタであるような場面では
コンパイラの最適化能力なんてあんまり目立たない→重要でない
ってなことになっちゃうと思うんだが...
で、未だにコンパイラの速度を競うような場面ってそんなにありますか?
計算屋さんにとっては重要な問題なのかなあ。
ほとんどライブラリに頼ってる気がせんでもないけど。
NGNG
>>203
そら遅くて当たり前…
そら遅くて当たり前…
210名無しさん@お腹いっぱい。
NGNG gcc-3.1.1 リリースage
NGNG
http://www.usenix.org/publications/library/proceedings/usenix-nt98/full_papers/zabatta/zabatta_html/zabatta.html
"Solaris 2.6 vs Windows NT 4.0"のスレッドパフォーマンス比較だけど,
The "same compiler", GNU gcc version 2.8.1, was used to compile the
test programs for both operating systems. ... However, later we
compiled the test programs with each system's native compiler (Visual
C++ 5.0 and SUN C Compiler 4.2) and found no significant differences
in performance.
となっているね.この場合,OS側のライブラリやカーネルを実行してる部分が多くて
ユーザプログラム側の部分によって大きな差がつかない,ということだろうね.
"Solaris 2.6 vs Windows NT 4.0"のスレッドパフォーマンス比較だけど,
The "same compiler", GNU gcc version 2.8.1, was used to compile the
test programs for both operating systems. ... However, later we
compiled the test programs with each system's native compiler (Visual
C++ 5.0 and SUN C Compiler 4.2) and found no significant differences
in performance.
となっているね.この場合,OS側のライブラリやカーネルを実行してる部分が多くて
ユーザプログラム側の部分によって大きな差がつかない,ということだろうね.
NGNG
板違いかもしんないけどさ。気に入らなかったら読み流してちょ。
コンパイラの教科書って、未だに Ahoのアレが一番メジャーなの?
あそこまで行かないにしても、それなりに網羅的に書いてある
もーちょっとモダーンな教科書あったら紹介きぼんぬ。
コンパイラの教科書って、未だに Ahoのアレが一番メジャーなの?
あそこまで行かないにしても、それなりに網羅的に書いてある
もーちょっとモダーンな教科書あったら紹介きぼんぬ。
213名無しさん@お腹いっぱい。
NGNGNGNG
>>212
つーか、最近は一冊にまとまっていない。分量多すぎ。
プログラミング言語一般論, parsing, type, code emiting&optimization
くらいに分かれている。翻訳があるドラゴンブック読んでから、次に進めばよい。
つーか、最近は一冊にまとまっていない。分量多すぎ。
プログラミング言語一般論, parsing, type, code emiting&optimization
くらいに分かれている。翻訳があるドラゴンブック読んでから、次に進めばよい。
216名無しさん@お腹いっぱい。
NGNG >212
中田育男著「コンパイラの構成と最適化」
中田育男著「コンパイラの構成と最適化」
NGNG
えいぷるさんの本があるべ
NGNG
NGNG
NGNG
正式リリースは 8/14 か。当初は 7/23 に出るとかいう話だったから、3週間遅れか。
NGNG
ftp.iij.ad.jp:/pub/GNU/gcc/ にはもうあるね。> gcc-3.2.tar.gz
223名無しさん@お腹いっぱい。
NGNG GCC 3.2 Released. アナウンスされた。
224名無しさん@お腹いっぱい。
NGNG GCCへの、というわけでもないですがコンパイラに関する
スレッドがみつけられなかったので質問させてください.
何とか社fooのCompiler (foocc)ver.10はsourceを書いた後
(2回目は自分自身でcompileするにしても)最初はfoocc-9で
compileするんでしょう.ver.9はver.8でcompile、と
考えていくとver.1はどうやってつくったんでしょうか?他の会社なりのhogeのcompiler(例えばhogecc-5とか)がその時あれば
ちょっと借りてきて1回目だけそれを使えばいいんですが、それでは
hogecc-1のsourceはどうやってcompileしたんでしょう?
最初は誰かえらい人がアセンブラで書いてくれた.位しか
思いつかないのですが...
こんなの常識なんでしょうか?
スレッドがみつけられなかったので質問させてください.
何とか社fooのCompiler (foocc)ver.10はsourceを書いた後
(2回目は自分自身でcompileするにしても)最初はfoocc-9で
compileするんでしょう.ver.9はver.8でcompile、と
考えていくとver.1はどうやってつくったんでしょうか?他の会社なりのhogeのcompiler(例えばhogecc-5とか)がその時あれば
ちょっと借りてきて1回目だけそれを使えばいいんですが、それでは
hogecc-1のsourceはどうやってcompileしたんでしょう?
最初は誰かえらい人がアセンブラで書いてくれた.位しか
思いつかないのですが...
こんなの常識なんでしょうか?
225春日三球
NGNG 今夜も寝られなくなっちゃったじゃねえかゴルァ!
NGNG
>224
最初はIPLをトグルスイッチぱちぱちやって入力した。
最初はIPLをトグルスイッチぱちぱちやって入力した。
227名無しさん@お腹いっぱい。
NGNG トグルスイッチといえば、
コンパイラではなくOSだがCray社を作ったシーモアクレイは
OSをトグルスイッチでパチパチパッチンと入れて
それがいきなり動いたっていう.本当か?
http://cruel.org/freeware/hdomcorrect.html
GCCと関係ないけど.
コンパイラではなくOSだがCray社を作ったシーモアクレイは
OSをトグルスイッチでパチパチパッチンと入れて
それがいきなり動いたっていう.本当か?
http://cruel.org/freeware/hdomcorrect.html
GCCと関係ないけど.
NGNG
何でみんな新しいもの追っかけるの?
昔は新しいモノを追っかけてたんだけど、安定してるはずのgcc2.95.2で
glibcをmakeしたら腐ったコード吐いたことがあったので、新しいのは怖くて使えないよ。
結局、egcs2.91.66が一番安心できる。
昔は新しいモノを追っかけてたんだけど、安定してるはずのgcc2.95.2で
glibcをmakeしたら腐ったコード吐いたことがあったので、新しいのは怖くて使えないよ。
結局、egcs2.91.66が一番安心できる。
229名無しさん@Emacs
NGNGNGNG
>>228
新しいもののほうがナイスな最適化するかもーとか、
C++ の標準準拠っぷりとか、
gcc のパッチを作ってるので仕方なくーとか。
必要ないんなら古いのでいいと思いますよ、ええ。
FreeBSD と NetBSD は gcc-3.x に移行する予定みたいですね。
新しいもののほうがナイスな最適化するかもーとか、
C++ の標準準拠っぷりとか、
gcc のパッチを作ってるので仕方なくーとか。
必要ないんなら古いのでいいと思いますよ、ええ。
FreeBSD と NetBSD は gcc-3.x に移行する予定みたいですね。
231名無しさん@お腹いっぱい。
NGNGNGNG
>>231
バグって不平をいうやつはそこまでのレベル。
バグって不平をいうやつはそこまでのレベル。
233名無しさん@お腹いっぱい。
NGNG おれbug見つけたら小躍りしながらレポート書いちゃうけどな(・∀・)
NGNG
NGNG
>>234
templateで遊んでたらいくらでもinternal compiler error出るぞ
templateで遊んでたらいくらでもinternal compiler error出るぞ
NGNG
>>235
internal compiler errorとか出たらどうやって追いかけてるの?
internal compiler errorとか出たらどうやって追いかけてるの?
237名無しさん@お腹いっぱい。
NGNG >>235
例えばどんなソースだとエラーがでる?
例えばどんなソースだとエラーがでる?
238名無しさん@お腹いっぱい
NGNGNGNG
gccのソースも読めないやしは半人前。
と言われつづけてはや10年
と言われつづけてはや10年
240名無しさん@お腹いっぱい。
NGNG 10年前の gcc-1.42 がファイル数 281、展開後のサイズ7.7Mだったのが、
gcc-3.2 ではファイル数 14375、サイズ161MB に肥大しているから、
せっかくの10年前にgccのソースを読む機会を逸した奴はもう一生読めないに違いない。
gcc-3.2 ではファイル数 14375、サイズ161MB に肥大しているから、
せっかくの10年前にgccのソースを読む機会を逸した奴はもう一生読めないに違いない。
241あぼーん
NGNGあぼーん
242あぼーん
NGNGあぼーん
NGNG
>>240 10年前のソースを読めば解決?w
NGNG
今のgccぐらいの規模なら理解できるだろ。
世の中もっと大きなソフトウェアは幾らでもある。
世の中もっと大きなソフトウェアは幾らでもある。
245名無しさん@お腹いっぱい。
NGNG ここにはgccを理解してる人がいるみたいなので質問させてください。
1. rtl.defやrtl.h,rtl.c
2. *.md
3. -drオプションを指定されたときに吐き出されるファイル
これら三つの関係がいまいちよくわかりません。
簡単でいいのでこれらの関係を教えて下さい。
1. rtl.defやrtl.h,rtl.c
2. *.md
3. -drオプションを指定されたときに吐き出されるファイル
これら三つの関係がいまいちよくわかりません。
簡単でいいのでこれらの関係を教えて下さい。
NGNG
NGNG
>>246
それはよく読んだのですが、分からないからここで質問しました
それはよく読んだのですが、分からないからここで質問しました
248あぼーん
NGNGあぼーん
NGNG
>>247
えー その info に十分な情報があると思うけどなあ。
1. RTL を操作するためのユーティリティ関数と、RTL の共通定義
3. コンパイル対象のソースが RTL に変換された直後の RTL の様子
2. insn-flags.h とか insn-codes.h とか insn-output.c とか
insn-attrtab.c とか、とにかくマシン依存のコンパイラソースを
生成するためのソース
えー その info に十分な情報があると思うけどなあ。
1. RTL を操作するためのユーティリティ関数と、RTL の共通定義
3. コンパイル対象のソースが RTL に変換された直後の RTL の様子
2. insn-flags.h とか insn-codes.h とか insn-output.c とか
insn-attrtab.c とか、とにかくマシン依存のコンパイラソースを
生成するためのソース
NGNG
NGNG
俺は組込み系やってるのでコンパイラが吐き出したコードを読む機会が多いんだけど、
最適化されるはずなのにうまくされてないような所ってのも、正しく動くけどbugのうちとみなしてレポートしてる
たいていは数日以内にpatch送ってもらえたりするんで、いつでもmakeできるように
gccのソースツリーは展開したまま置いてある。
間違ったコード吐いたりされる場合はさすがにpatch送ってもらうのを待ってるわけにいかんので
レポートするのと同時に自分で治すこともあるけど、簡単に治せるようなものなら良いが
ちょっとややこしくなるともう手に負えん(;´Д`)
最適化されるはずなのにうまくされてないような所ってのも、正しく動くけどbugのうちとみなしてレポートしてる
たいていは数日以内にpatch送ってもらえたりするんで、いつでもmakeできるように
gccのソースツリーは展開したまま置いてある。
間違ったコード吐いたりされる場合はさすがにpatch送ってもらうのを待ってるわけにいかんので
レポートするのと同時に自分で治すこともあるけど、簡単に治せるようなものなら良いが
ちょっとややこしくなるともう手に負えん(;´Д`)
252名無しさん@お腹いっぱい。
NGNG 今gcc-3.2コンパイルしてます。
dejagnuのチェックでFAILが出まくってるんだけど、コンパイル失敗ですか?
一応継続してるんですが。
dejagnuのチェックでFAILが出まくってるんだけど、コンパイル失敗ですか?
一応継続してるんですが。
253名無しさん@お腹いっぱい。
NGNG gcc が Java のバイトコードも吐けるようになるのはいつの日か。
NGNG
>>253 gcj -C で吐くと思われ。
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国国営メディア「沖縄は日本ではない」… ★4 [BFU★]
- 小野田氏、”中国経済への依存“に警戒感 高市首相の国会答弁巡り [煮卵★]
- 【こんなの初めて…】民泊には既にキャンセルも 中国の渡航自粛で [ぐれ★]
- 台湾声明 「台湾は独立した主権国家、中国は台湾を統治したことがなく、中国は口出しする権利ない」 中国が高市首相に抗議で ★7 [お断り★]
- 日本が「世界で最も魅力的な国」1位に!✨「魅力的な都市」では東京が2位 「魅力的な地域」は北海道が7位に [煮卵★]
- 【サッカー】独占入手 最年長JリーガーにW不倫疑惑 『お風呂覗きたいんですが笑』LINE流出も… 慰謝料トラブルを本人に直撃 [冬月記者★]
- 日経平均、49000円割れ 国賊高市を許すな [402859164]
- 【高市速報】日本「中国さんお願い首脳会談させて!ねえってば!😭」 [931948549]
- とうすこ🏡愛され絵文字♡🤥👊😅👊👶♡
- 浜田省吾に「チェリーボーイ」って曲あったっけ? [369521721]
- 中国とのパイプ役がいない高市政権、実施詰みか [668970678]
- ネトウヨ、完全に終わる 「高市さんの『台湾が武力攻撃された場合』というのは『米中戦争が勃発した場合』って意味に決まってるだろ!」 [314039747]
