「Low Level Virtual Machine」を編集中

ナビゲーションに移動 検索に移動

警告: ログインしていません。編集を行うと、あなたの IP アドレスが公開されます。ログインまたはアカウントを作成すれば、あなたの編集はその利用者名とともに表示されるほか、その他の利点もあります。

この編集を取り消せます。 下記の差分を確認して、本当に取り消していいか検証してください。よろしければ変更を保存して取り消しを完了してください。

最新版 編集中の文章
1行目: 1行目:
'''Low Level Virtual Machine'''(読み:ろーれべるばーちゃるましーん、略語:[[LLVM]])とは、様々な[[プログラミング言語]]の、様々な[[コンパイラ]]に、共通の「[[最適化]]」を提供する目的で開発されている[[オープンソース]]なコンパイラ基盤である。
+
'''Low Level Virtual Machine'''(読み:ろーれべるばーちゃるましーん、略語
 +
[[LLVM]])とは、様々な[[プログラミング言語]]の、様々な[[コンパイラ]]に、共通の「[[最適化]]」を提供する目的で開発されている[[オープンソース]]なコンパイラ基盤である。
  
 
==概要==
 
==概要==
LLVMでは様々な[[プログラミング言語]]に「共通の最適化」を提供するため、[[clang]]などのLLVM対応コンパイラからLLVMが指定する[[中間コード]]形式で出力してもらい、LLVMはその[[中間コード]]に対してプラットフォーム非依存の最適化やプラットフォーム依存の最適化などの「段階的な最適化」を行い、最終的に[[ネイティブコード]]を出力する。
+
LLVMでは様々な[[プログラミング言語]]に「共通」の「最適化」を提供するため、LLVM対応コンパイラからLLVMが指定する[[中間コード]]形式で出力してもらい、LLVMはその[[中間コード]]に対してプラットフォーム非依存の最適化、プラットフォーム依存の最適化など「段階的な最適化」を行い、最終的に[[ネイティブコード]]を出力する。
  
LLVMは[[RISC]]と非常によく似た[[命令セット]]を持つ極めて実在の[[CPU]]の[[ネイティブコード]]に近い[[仮想マシン]]および[[中間コード]]のひとつとなっており、[[Java VM]](と[[Javaバイトコード]])や[[共通言語基盤]](と[[共通中間言語]])などと比べると[[抽象度]]は極めて低く、あくまで[[最適化]]に徹している。このため[[ガベージコレクション]]や[[セキュリティサンドボックス]]などの余計な機構は持たないという特徴がある。
+
LLVMは[[RISC]]と非常によく似た[[命令セット]]を持つ極めて実在の[[CPU]]の[[ネイティブコード]]に近い[[仮想マシン]]および[[中間コード]]のひとつとなっており、[[Java VM]](と[[Javaバイトコード]])や[[共通言語基盤]](と[[共通中間言語]])などと比べると[[抽象度]]は極めて低く、あくまで[[最適化]]に徹するため[[ガベージコレクション]]や[[セキュリティサンドボックス]]などの余計な機構は持たないという特徴がある。
  
 
==建前と本音==
 
==建前と本音==
LLVMでは「様々な[[プログラミング言語]]」という建前はあるが、その実態は[[GPL]]撲滅を訴える[[BSD]]信者たちにより、[[gcc]]を駆逐すべく開発が進められている「[[clang]]」と呼ばれる[[C言語]]の[[コンパイラ]]が主軸となっており、[[clang]]の意見・要望がまず第一優先される。この2つのプロジェクトは事実上の同一プロジェクトであると考えてほぼ間違いない。
+
LLVMでは「様々な[[プログラミング言語]]」という建前はあるが、その実態は[[GPL]]撲滅を訴える[[BSD]]信者たちにより、[[gcc]]を駆逐すべく開発が進められている「[[clang]]」と呼ばれる[[C言語]]の[[コンパイラ]]が主軸となっており、[[clang]]の意見・要望がまず第一優先されるという事実上の同一プロジェクトであると考えてほぼ間違いない。
  
==関連項目==
+
== 関連項目 ==
 +
* [[中間コード]]
 +
* [[コンパイラ]]
  
*[[中間コード]]
+
== 参考文献 ==
*[[コンパイラ]]
+
{{reflist}}
  
==外部リンク==
+
== 外部リンク ==
 
+
* http://llvm.org/
*http://llvm.org/
 
  
 
{{stub}}
 
{{stub}}

MonoBookへの投稿はすべて、他の投稿者によって編集、変更、除去される場合があります。 自分が書いたものが他の人に容赦なく編集されるのを望まない場合は、ここに投稿しないでください。
また、投稿するのは、自分で書いたものか、パブリック ドメインまたはそれに類するフリーな資料からの複製であることを約束してください(詳細はMonoBook:著作権を参照)。 著作権保護されている作品は、許諾なしに投稿しないでください!

このページを編集するには、下記の確認用の質問に回答してください (詳細):

取り消し 編集の仕方 (新しいウィンドウで開きます)

このページで使用されているテンプレート:

このページは 1 個の隠しカテゴリに属しています: