パスワードを忘れた? アカウント作成
11300 story

GCC 4.1 55

ストーリー by Acanthopanax
最適化 部門より

Anonymous Coward曰く、"フリーコンパイラ、GCC 4.1がリリースされた(編注: まだリリースされていない。追記参照)。Release Changesによれば、改善された最適化インフラ、CとObjective-C用の新パーサー(古いBisonベースのパーサーを取っ払って高速な再帰下降パーサーに取り替え)などの点が主に改善された。既に開発が始まっているGCC 4.2でのGCC改良予定計画についてはGCC Wiki - GCC 4.2 Projectsを参照されたい。同時に、4.1系の開発はバグフィックスとドキュメントの修正のみに限定される。"

[2005-11-26 21:50 JST Acanthopanaxによる追記] コメント#838427以下のスレッドにあるように、リリースはまだでした。大変失礼いたしました。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • by Anonymous Coward on 2005年11月26日 21時39分 (#838427)
    gcc-4.1 はまだリリースされてません。リリースまであと数ヶ月はかかります。
  • 感想 (スコア:2, 参考になる)

    by oddmake (1445) on 2005年11月26日 20時07分 (#838392) 日記
    gcc-4.0でうまくコンパイルできなかったりしてgcc-3.3をメインで使っているヘタレですが、バッファーオーバーフロー対策が強化されていると知って感心しました。
    あと、Adaなんて言語に新規機能が追加されているのが、ラブレイス男爵夫人には悪いがあまり需要があるように思えなかったのでやや驚きでした。

    # かなりチラシの裏っぽいけどID
    --
    /.configure;oddmake;oddmake install
    • Re:感想 (スコア:2, おもしろおかしい)

      by etsav (7596) on 2005年11月27日 5時00分 (#838543) ホームページ 日記

      えっと、 誰も訂正しないみたいなので――伯爵夫人です。

      親コメント
      • by Anonymous Coward
        Adaって含める意味あるんだろうか・・・

        # GNU CC なのになんでfortranが、とか小一時間悩んだAC
        • Re:感想 (スコア:1, 参考になる)

          by Anonymous Coward on 2005年11月27日 17時06分 (#838640)
          ご存知とは思いますけど……。
          GCC は Ver. 2.95 くらいから GNU Compiler Collection の略です。
          (それまではGNU C Compiler だったようです)
          親コメント
    • Re:感想 (スコア:2, 参考になる)

      by chiba-f (6867) on 2005年11月27日 23時59分 (#838730)
      かならずしもプログラミングをよく知ったひとがGCCを使っている訳ではないので,トラブルが多いGCC 4.0を使わないで欲しいと言うライブラリ開発者のサイトもあります.たとえば,多倍超計算のGMP (GNU MP) [swox.com]とか.(いろんなプラットホームで動くので重宝してます.)
      親コメント
    • Re:感想 (スコア:1, 興味深い)

      by Anonymous Coward on 2005年11月26日 21時20分 (#838419)
      ># かなりチラシの裏
      便乗してチラシの裏
      このへん [meta-comm.com]はどうなるんだろう…
      親コメント
    • by Anonymous Coward
      >あまり需要が

      …えーっと国防システム系とか
  • Objective-C++ (スコア:2, 興味深い)

    by Anonymous Coward on 2005年11月26日 20時18分 (#838396)
    > CとObjective-C用の新パーサー

    とのことですが、Objective-C++はマージされたのでしょうか?
    Objective-C++がApple独占では使いたくても使えません。
    • D and Objective-C++ (スコア:2, 参考になる)

      by oku (4610) on 2005年11月26日 21時05分 (#838412) 日記
      Objective-C++がApple独占では使いたくても使えません。

      そもそも Apple 方面以外に需要があるのか、という突っ込みはナシですか? :-)

      # まあ、あればあったでよい玩具 (←褒め言葉) として
      # 遊んでしまいそうな気はしますが。

      D Front End for GCC [earthlink.net] patch がうまく当たるかどうかは試してませんが、0.16 は gcc-4.0.x までしか対応していないようですね。

      親コメント
      • by mpls (8235) on 2005年11月27日 22時37分 (#838712) 日記
        どこにコメントつけようかと思ったけど、ここで。

        NeXT の時代から、gcc には Objective-C がついています。ジョブスとストールマンの逸話は結構有名だと思っていましたが…。

        今現在、Apple 以外に需要があるのかと言われれば、他の方がコメントしている GNUSTEP ぐらいかと思いますが。

        なんか、NeXTSTEP 以外にも Objective-C を使ってるものがあった気がしますが、それは忘れてしまいました…。
        --
        --- show mpls ldp neighbor
        親コメント
      • by Anonymous Coward
        > そもそも Apple 方面以外に需要があるのか

        つ【GNUstep】

        というか、とっくの昔にマージされてたものと思い込んでたけど、違ったんか… アポーにはPCHサポートで恩がありますが。
        • by Anonymous Coward
          とっくの昔にマージされてたのはObjective-Cでは?
          • by Anonymous Coward
            gccの配布自体にObjective-Cフロントエンドが含まれているのは2.7の頃から知ってたよ。GNUstepでは使い物にならなかったけど。

            で、ぐぐってみたら(はじめからそうすればいいのに)答えが出てきた [gnu.org]。今はMike Stump氏がObjective-C/Objective-C++担当でbranch切って作業を進めているところらしい。ちなみにGCCは最近CVSからSVNへ移行してる [gnu.org]ので注意。
    • Appleといえば (スコア:1, 参考になる)

      by Anonymous Coward on 2005年11月27日 12時20分 (#838585)
      LLVMをGCCに統合しようぜという話が出ている [osnews.com]のに、スラド民が誰もそのことに触れていない件について。
      親コメント
      • by iwa (2980) on 2005年11月28日 13時57分 (#838978)
        ぐぐっても日本語の説明が見当たらなかったので、Excite [excite.co.jp]の力を借りて、Overview [llvm.org]を翻訳してみた。(英語が壊滅的に苦手なので添削きぼんぬ)

        ----------------------------------------

        Low Level Virtual Machine (LLVM) とは:

        1. A compilation strategy designed to enable effective program optimization across the entire lifetime of a program.

          プログラムのライフタイム全体にわたる、効果的な最適化が可能なように設計されたコンパイル戦略である。

          LLVM supports effective optimization at compile time, link-time (particularly interprocedural), run-time and offline (i.e., after software is installed), while remaining transparent to developers and maintaining compatibility with existing build scripts.

          LLVMは、コンパイル時、リンク時(特に手続き間における)、実行時、およびオフライン時(すなわち、ソフトウェアがインストールされた後)における効果的な最適化をサポートしており、なおかつ、開発者にとっては透過的で、既存のビルドスクリプトに関する互換性が維持されている。

        2. A virtual instruction set - LLVM is a low-level object code representation that uses simple RISC-like instructions, but provides rich, language-independent, type information and dataflow (SSA) information about operands.

          仮想命令セット - LLVMは低レベルなオブジェクトコード表現である。これは、単純なRISC風命令ではあるが、言語から独立した、オペランドに関する型情報およびデータフロー(SSA)情報を十分に提供する。

          This combination enables sophisticated transformations on object code, while remaining light-weight enough to be attached to the executable.

          これらによって、実行ファイルに付加するのに十分軽量なままで、オブジェクトコードにおける洗練された変換が可能になる。

          This combination is key to allowing link-time, run-time, and offline transformations.

          これらは、リンク時、実行時、およびオフライン時における変換を可能にする鍵である。

          【訳注】「this combination」は「RISC風命令+型情報+データフロー情報」のこと?

        3. A compiler infrastructure - LLVM is also a collection of source code that implements the language and compilation strategy.

          コンパイラインフラストラクチャ - また、LLVMは言語とコンパイル戦略を実装するソースコードの集まりでもある。

          The primary components of the LLVM infrastructure are a GCC-based C & C++ front-end, a link-time optimization framework with a growing set of global and interprocedural analyses and transformations, static back-ends for the X86, PowerPC, IA-64, Alpha, & SPARC V9 architectures, a back-end which emits portable C code, and a Just-In-Time compiler for X86, PowerPC, and SPARC V9 processors.

          LLVMインフラストラクチャの第一の構成要素は、GCCベースのCおよびC++フロントエンド、グローバルで手続き間における解析と変換まで行う(???)リンク時の最適化フレームワーク、X86、PowerPC、IA-64、Alpha、およびSPARC V9アーキテクチャのための静的なバックエンド、ポータブルなCコードを出力するバックエンド、および、X86、PowerPC、およびSPARC V9プロセッサのためのジャストインタイムコンパイラからなる。

        4. LLVM does not imply things that you would expect from a high-level virtual machine.

          LLVMはあなたが高度なバーチャルマシンに期待するような機能は持ち合わせていない。

          It does not require garbage collection or run-time code generation (In fact, LLVM makes a great static compiler!).

          LLVMはガーベージコレクションや実行時コード生成を必要としない。(すなわち、LLVMはすばらしい静的コンパイラを作る(?)のである)

          Note that optional LLVM components can be used to build high-level virtual machines and other systems that need these services.

          任意のLLVMコンポーネントは、高度なバーチャルマシンやそのようなサービスを必要とする皮下のシステムを構築するのに利用可能なことに注意せよ。

        LLVM is a robust system, particularly well suited for developing new mid-level language-independent analyses and optimizations of all sorts, including those that require extensive interprocedural analysis.

        LLVMは、強健(robust)なシ

        親コメント
    • by Anonymous Coward
      ところでOSXに入ってる物と、オープンソースで作られてる物ではどの程度違うのでしょうか?
  • by Artane. (1042) on 2005年11月26日 19時55分 (#838389) ホームページ 日記
    libstdc++のg++依存性って、あいかわらずなんでしょうか?
    sidつかってますが、又、Qtとか使ってるプログラムがややこしいことになりそうな(;´Д`)
  • COBOLは (スコア:1, おもしろおかしい)

    by Anonymous Coward on 2005年11月27日 23時19分 (#838718)
    まだ入ってないんでしたっけ?
typodupeerror

計算機科学者とは、壊れていないものを修理する人々のことである

読み込み中...