タグ

llvmに関するJxckのブックマーク (12)

  • ThinLTO: Scalable and Incremental LTO

    ThinLTO was first introduced at EuroLLVM in 2015, with results shown from a prototype implementation within clang and LLVM. Since then, the design was reviewed through several RFCs, it has been implemented in LLVM (for gold and libLTO), and tuning is ongoing. Results already show good performance for a number of benchmarks, with compile time close to a non-LTO build. This blog post covers the back

    ThinLTO: Scalable and Incremental LTO
    Jxck
    Jxck 2016/06/24
  • Microsoft、C言語を拡張する「Checked C」を開発中

    fossBytesに6月14日(米国時間)に掲載された記事「Microsoft Open Sources "Checked C" — An Extended Version Of C To Avoid Coding Errors」が、Microsoftにより開発が進められている「Checked C」と呼ばれる技術について伝えた。「Checked C」はC言語を拡張する機能で、より安全なコーディングが可能になるとされている。 Microsoftのソフトウェアの多くはC/C++で開発されている。C言語はポインタの扱いを間違えると来アクセスしてはいけないメモリを指した操作をしてしまうことがあり、これがバグや脆弱性の原因の1つになっている。「Checked C」はこうした問題を回避することを目指してC言語の機能を拡張するもので、ポインタに対してあらかじめ範囲情報を持たせておき、ポインタの指し示す

    Microsoft、C言語を拡張する「Checked C」を開発中
    Jxck
    Jxck 2016/06/17
    yet another alternative C ? llvm ベースらしい。
  • 大学院生のためのLLVM | POSTD

    (注:2017/07/06、いただいたフィードバックを元に翻訳を修正いたしました。) この記事は、 LLVM コンパイラ基盤を使ってリサーチをする人のための入門書です。これを読めば、コンパイラに全く興味のない大学院生も、楽しみながらLLVMを使って優れた功績をあげられるようになるでしょう。 LLVMとは何か? LLVMは非常に優れていて、ハックしやすく、C言語やC++のような”ネイティブ”言語向けの、時代の先端を行くコンパイラです。 LLVMの素晴らしさに関しては他にも様々な話を聞くのではないでしょうか(JITコンパイラとしても使えるとか、C言語系列以外の様々な言語を強化できるとか、 App Storeからの新しい配信形態 であるとか、などなど)。もちろん全部当のことですが、今回の記事の目的としては、上述の定義が重要です。 LLVMが他のコンパイラと差別化される理由には、いくつかの大きな

    Jxck
    Jxck 2015/08/28
  • Goバインディングが加わった「LLVM 3.6」リリース | OSDN Magazine

    LLVM Projectは2月27日、コンパイラ環境LLVMの最新版「LLVM 3.6」およびLLVMベースのC/C++/Objective-Cコンパイラ「Clang 3.6」をリリースした。Goバインディングが加わったほか、Clangではデフォルトの言語仕様がC99からC11となり、C++17のサポートも開始されている。 LLVMはモジュラー形式で再利用可能なコンパイラとツールチェーンを集めたもの。ソースとターゲットに依存しないオプティマイザを備えるLLVM Coreライブラリ、LLVMネイティブで一定条件時にGCCより3倍高速というC/C++/Objective-Cコンパイラ、LLVMオプティマイザとコードジェネレーターをGCCパーサーに統合した「dragonegg」など多数のサブプロジェクトを擁する。ライセンスはBSDライセンスに似た「University of Illinois/N

    Goバインディングが加わった「LLVM 3.6」リリース | OSDN Magazine
    Jxck
    Jxck 2015/03/03
    おお!
  • AppleがLLVM JITを使用してWebKitのJSエンジンをスピードアップ

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    AppleがLLVM JITを使用してWebKitのJSエンジンをスピードアップ
    Jxck
    Jxck 2014/05/27
     私たちの知る限りFTLは,ループ処理の実行中にLLVMでコンパイルされたコードへのOSRを行う初めてのコンパイラです。
  • LLVMによるプログラミング言語の実装 – 日曜研究室

    最近の投稿 問題: 積み木を10個積み上げるのにかかる時間は 2020/8/20 木曜日 Google の G Suit Team から “[Action Required] Remove internal links to the G Suite Domain Contact page for your organization” ていうメールが来た 2020/8/14 金曜日 NZXT H1 と ROG STRIX B550-I GAMING で組んでみた 2020/7/17 金曜日 花粉症対策2019 2019/3/16 土曜日 マルチディスプレイ時のDisplayPort問題を何とかしてみた 2019/1/12 土曜日 REALFORCEソフトウェアがインストールできない(解決済) 2018/12/6 木曜日 GeForce RTX 2080 Founders Edition を買

    Jxck
    Jxck 2013/09/09
    これは凄い。
  • 人間でもわかるLLVMバックエンド入門

    go-sqlite3を使ってCloud Spannerエミュレーターを作ってみた / Cloud Spanner emulator with go-sqlite3

    人間でもわかるLLVMバックエンド入門
    Jxck
    Jxck 2013/04/01
  • LLVMベースのGoによるGoコンパイラー、llgo

    江添亮 自由ソフトウェア主義者 C++ Evangelist C++標準化委員会の委員 ドワンゴ社員 C++11を執筆した。 株式会社ドワンゴで働いている。 Mail:boostcpp@gmail.com Twitter:@EzoeRyou GitHub: https://github.com/EzoeRyou 江添亮のマストドン@EzoeRyou 筆者にブログのネタを提供するために、品物をアマゾンお気に入りリスト経由で送りたい場合: Amazon.co.jp: 江添亮: 江添のほしい物リスト 筆者にブログのネタを提供するために、直接に品物を送りたい場合、住所をメールで質問してください。 View my complete profile ► 2020 (31) ► December (2) ► November (2) ► September (2) ► August (4) ► Jul

    Jxck
    Jxck 2013/04/01
  • LLVMで遊ぶ(整数圧縮とか、x86向けの自動ベクトル化とか)

    PL/CUDA - Fusion of HPC Grade Power with In-Database Analytics

    LLVMで遊ぶ(整数圧縮とか、x86向けの自動ベクトル化とか)
    Jxck
    Jxck 2013/04/01
  • LLVMで作る日本語プログラミング言語 - ずっと君のターン

    https://github.com/technohippy/Kaleidoscope.ja 以前から日語プログラミング言語って作ってみたくて、でもただのトランスレーターならともかく、まっとうにコンパイル出来てネイティブでサクサク動くようなのはどうやって作ったらいいか分からないどころか、どの辺から勉強に手をつければいいのかすら分からなくて放置してたわけです。 ところがまぁ世の中良くしたもので、LLVMというものを使えばフロントエンドを作るだけで、ややこしいところは良しなに処理してくれるそうじゃないですか。しかも最近が出たばかり。これが日語の予約語とか関数名・変数名とかを扱えるなら、いろいろ捗りそう。ということで試してみました。 結論から言えば、タイトルのとおり、LLVMは日語も問題なく使えるみたいです。 サンプル: カレイドスコープ ということで、さっそく実際に動くものを作ります。

    LLVMで作る日本語プログラミング言語 - ずっと君のターン
    Jxck
    Jxck 2013/02/18
  • LLVMをちょっと調べてみた - wagavulinの日記

    最近LLVMについて調べてみたのでまとめてみる。自分はコンパイラの専門家でも何でもないので間違った内容があるかもしれない。GCCとコンパイラの仕組みLLVMの前にまずはコンパイラ一般の話。コンパイラはまずソースコードを解析して内部表現にする。これはたいていツリー構造となる。このツリー構造のデータに対して文法チェックを行ったり最適化処理を行ったりした後に、オブジェクトファイルを生成する。コンパイラの内部表現だが、実際には複数の種類の内部表現を使っていることが多いらしく、GCCもそのようになっている([1]の図3)。これによるとまずはその言語固有のツリーにするようだ(C trees, C++ treesなど)。これをGENERICという形式にする。GENERICは名前のとおり言語に依存しない一般的な形式で、どの言語の場合も一度GENERICにする。GENERICはその後さらにGIMPLEという

    Jxck
    Jxck 2012/05/21
    llvm 気になるな。ブラウザに乗ったら色々な宗教戦争(JS,Coffee,Dart,GWT)が終わりを告げたりしないだろうか?(夢見すぎ?)
  • Google Code Archive - Long-term storage for Google Code Project Hosting.

    Code Archive Skip to content Google About Google Privacy Terms

  • 1