並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 4 件 / 4件

新着順 人気順

LLVMの検索結果1 - 4 件 / 4件

  • 「LLVM lld」「mold」が解決した、リンクが遅い問題 間違った思い込みの解消に必要だったのは“クレイジーな人”

    Blue Whale Systems株式会社の植山類氏は、「LLVM lld」「mold」が解決したプログラムのビルドの問題を例に、“大きな問題”を解決することについて話しました。全3回。 1個の本質的な問題を解いてしまうほうが細かいことを考えるよりも簡単 植山類氏:では始めます。本日、機会をいただいて講演をすることになった植山と申します。この講演の内容は「大きな問題のほうが小さな問題より解くのは簡単だ」というタイトルです。 どういう趣旨かというと、常に簡単だというわけではないのですが、いろいろな場面で、1個の本質的な問題をドッカンと解いてしまうほうが、いろいろな細かいことを考えるよりも簡単なことが多いという話です。 そういうソリューションが往々にして見逃されがちということがけっこうあって、そういうことにどうやって挑戦していくのかという気持ちの話を、僕がそういう大きな問題を解決した経験を踏

      「LLVM lld」「mold」が解決した、リンクが遅い問題 間違った思い込みの解消に必要だったのは“クレイジーな人”
    • LLVM入門 - javascript使いがLLVM(Rust:inkwell)でjavascriptをJITコンパイルするまで

      コンパイラ基盤であるLLVMについて、全く知識がない私が、 javascriptソースコードをパースしLLVMでコンパイルできるようになりました。 LLVMの記事は数多くありますが、初心者向けの記事が少なく感じたため、 本記事では、できる限り分かりやすくLLVMについて紹介できる記事を書こうと思います。 ソースコードは、こちらに置いています。 自己紹介 ふだん、javascriptやpythonなどインタプリタ言語を使うエンジニアです。 LLVMについて、全く知識がなかった人間です。 背景 過去に、おもちゃのブラウザ自作をやってみました。 HTMLとCSSを解析し、レンダリングするところを書き、基本的な動作を知ることができました。 HTMLとCSSとくれば、次はJSだと思い、JSを実行するエンジンを書いてみたくなりました。 ただし、WebブラウザのAPIとJS実行エンジンをバインディングす

        LLVM入門 - javascript使いがLLVM(Rust:inkwell)でjavascriptをJITコンパイルするまで
      • 【寄稿】独自言語のコンパイラをLLVM backendを用いて作る「ミニキャン言語を作ってみよう!」講義録 - Flatt Security Blog

        はじめに 弊社Flatt Securityでは学生の学びを支援したいという想いから今回少額ではありますが高橋さんの留学を支援させていただき、そのご縁で弊社のYONEUCHI, Takashi (@lmt_swallow) | Twitterもスタッフを務めるセキュリティミニキャンプにおける素晴らしい講義の内容をテックブログに書いていただけることになりました。以下本文になります。 @00_ です。今年の夏のUC Berkeleyへの留学費用をFlatt Securityさんに支援して頂いた経緯で、セキュリティミニキャンプの講義内容についてテックブログで書くことになりました。 2019/09/28-2019/09/29 のセキュリティミニキャンプ山梨で「ミニキャン言語を作ってみよう!」の講座を行いました。この講座では、「ミニキャン言語(MC言語)」という独自言語のコンパイラを、自分がコミッタで

          【寄稿】独自言語のコンパイラをLLVM backendを用いて作る「ミニキャン言語を作ってみよう!」講義録 - Flatt Security Blog
        • Rust + LLVMでプログラミング言語を自作してセルフホスティングした話

          llrlは自作のプログラミング言語です。大きな特徴が2つあります。 Hindley-Milnerベースの型推論による静的型付け (+型クラス) Lisp-likeなS式によるシンタックスとLLVM JITによるマクロ この言語の処理系をRustとLLVMを用いて実装し、それをllrl上に移植してセルフホスティングを試みました。無事セルフホスティングを達成したので、取り組んだことやモチベーションなどを順に振り返りたいと思います。 LLVMについては、フロントエンド側・バックエンド側ともに既にいくらかの解説記事が見られるため、概要は省略します。今回は新たなプログラミング言語のバックエンドとしてLLVMを用いるので、LLVMのフロントエンド側の実装がメインとなります。 事の発端: LLVM Kaleidoscopeチュートリアル Kaleidoscopeは、LLVMのチュートリアルにおいて実装す

            Rust + LLVMでプログラミング言語を自作してセルフホスティングした話
          1