タグ Goコンパイラ
人気順 10 users 50 users 100 users 500 users 1000 usersGoコンパイラのお勉強(3)~配列の効率的な操作に関する最適化~ - Techtouch Developers Blog
はじめに string と byte のキャスト最適化 1. map のキー指定のためのキャスト 2. string を byte 毎に処理するためのキャスト 3. 比較のためのキャスト memclr による配列ゼロクリア最適化 ガベージコレクションのマークスキャン回避 おわりに 参考文献 はじめに SRE の izzii (𝕏: @ahneahneahne) です。今回をもって... 続きを読む
Goコンパイラのお勉強(2)~高階関数のためのインライン展開とエスケープ解析~ - Techtouch Developers Blog
はじめに インライン展開 インライン展開とは 高階関数のパフォーマンスが落ちる例 インライン展開の制約 エスケープ解析 エスケープ解析とは 高階関数のパフォーマンスが落ちる例 さいごに 参考文献 はじめに 先々月にも Go コンパイラの最適化に関するブログ記事を書いたのですが、多くのブックマークを頂けて感謝です... 続きを読む
Goコンパイラのお勉強 ~ゼロ幅の型によるメモリ利用の最適化と未定義動作 ~ - Techtouch Developers Blog
はじめに メモリアロケーションの回避 ゼロ幅の型(=ゼロサイズの型)とは アドレスの同一性に関する未定義動作 この最適化が有効な場面 1. map 2. chan 3. interface の実装 おわりに 参考文献 はじめに こんにちは。SRE の izzii です。 最近は某フィットネスゲームが習慣だったり、ボルダリングを再開したり、登山シ... 続きを読む
Goコンパイラを自作して93日でセルフホストを達成した(2回目) · DQNEO日記
Goコンパイラをゼロから書いてセルフホストを達成しました。(1年ぶり2回目) https://github.com/DQNEO/babygo 100日後にセルフホストできるGoコンパイラ 1日目 pic.twitter.com/veSKNhQKXh — ドキュネオ (@DQNEO) April 1, 2020 (ちなみに 前回の話はこちら 「Goコンパイラをゼロから作って147日でセルフホストを達成し... 続きを読む
Goコンパイラをゼロから作って147日でセルフホストを達成した - Qiita
Go言語コンパイラをスクラッチから書いてセルフホストを達成しました。 https://github.com/DQNEO/minigo 本家Goコンパイラの実装はほとんど見ずに、ほぼ 8cc 1 というCコンパイラから学んだ知識のみで作りました。 特徴 コンパイルするとアセンブリを吐きます 字句解析・構文解析は手書きです。yacc/lex などのツールは... 続きを読む
GoのCコンパイラツールチェインを使う - moriyoshiの日記
2013-12-26 GoのCコンパイラツールチェインを使う (この記事は Go Advent Calendar 2013 の12月24日に公開されるはずの記事でした。関係者の皆様大変申し訳ない。) はじめに Goコンパイラをビルドすると、なぜかアセンブラ (5a, 6a, 8a) やCコンパイラ (5c, 6c, 8c) までもがビルドされます。これらはPlan 9のツールチェイン由来のもので、... 続きを読む