実行環境・ランタイム・コンパイラ

スポンサーリンク
GCC / Clang (C言語)

【実務・中級編】Clangのプラグインで独自警告を追加!特定の関数呼び出しを禁止するカスタムルール実装術 – 実行環境・ランタイム・コンパイラ生産性向上バイブル

序章:なぜ「静的解析の自動化」だけではレガシーコードの腐敗を防げないのかテックリードとして大規模なC言語コードベースを管轄していると、避けて通れない問題がある。それは、どれほど厳格なコーディング規約をドキュメント化し、プルリクエストのレビュ...
GCC / Clang (C言語)

【入門編】Clangのプラグインで独自警告を追加!特定の関数呼び出しを禁止するカスタムルール実装術 – 実行環境・ランタイム・コンパイラ生産性向上バイブル

こんにちは!開発環境アーキテクトの先輩です。毎日のコーディング、本当にお疲れ様です。C言語を書いているとき、「なんで標準ライブラリの `strcpy` や `gets` なんて危険な関数が、現代のコンパイラでも警告レベルで素通りしてしまうん...
GCC / Clang (C言語)

【テクニカル・上級編】バイナリの肥大化を防げ!GCCのCOMDAT折り畳みとセクション除去オプションの深層 – 実行環境・ランタイム・コンパイラ生産性向上バイブル

バイナリ肥大化という名の技術的負債:なぜGCCのデフォルトを疑うべきか組み込みシステム、エッジAI、あるいはコンテナイメージのサイズを極限まで削る必要があるマイクロサービスの世界において、バイナリの肥大化は常にエンジニアの頭を悩ませる問題だ...
GCC / Clang (C言語)

【実務・中級編】バイナリの肥大化を防げ!GCCのCOMDAT折り畳みとセクション除去オプションの深層 – 実行環境・ランタイム・コンパイラ生産性向上バイブル

こんにちは。テックリードの私だ。組み込み開発、IoTデバイス、あるいはコンテナイメージの軽量化が死活問題となるモダンなC言語プロジェクトにおいて、「バイナリサイズの肥大化」は常にエンジニアの頭を悩ませる。「数個の小さなユーティリティ関数を追...
GCC / Clang (C言語)

【入門編】バイナリの肥大化を防げ!GCCのCOMDAT折り畳みとセクション除去オプションの深層 – 実行環境・ランタイム・コンパイラ生産性向上バイブル

こんにちは!日々の開発、本当にお疲れ様です。C言語でプログラムを書いていると、ふとこんな疑問を持ったことはありませんか?「数行の小さな関数しか書いていないのに、生成されたバイナリがやけに重い……」「使っていないはずのライブラリの関数が、どう...
GCC / Clang (C言語)

【テクニカル・上級編】C言語のビルド時間をゼロに?分散コンパイル環境『distcc』をGCC/Clangで構築する – 実行環境・ランタイム・コンパイラ生産性向上バイブル

コンパイル地獄からの脱却:distccとGCC/Clangによる分散コンパイル環境の極限構築数百万行を超えるC/C++の大規模コードベースにおいて、単一のワークステーションによるコンパイルは、常にエンジニアの生産性を削ぐボトルネックであった...
GCC / Clang (C言語)

【実務・中級編】C言語のビルド時間をゼロに?分散コンパイル環境『distcc』をGCC/Clangで構築する – 実行環境・ランタイム・コンパイラ生産性向上バイブル

こんにちは。テックリードの私だ。日々、数百万行に及ぶC/C++のレガシーコードベースや、巨大な組み込みファームウェア、あるいは自作のオープンソースエンジンをビルドしているあなたなら、一度はこう絶望したことがあるはずだ。「またフルビルドに15...
GCC / Clang (C言語)

【入門編】C言語のビルド時間をゼロに?分散コンパイル環境『distcc』をGCC/Clangで構築する – 実行環境・ランタイム・コンパイラ生産性向上バイブル

こんにちは!日々の開発で、巨大なC/C++プロジェクトのコンパイル待ち時間に悩まされていませんか?「ちょっとコードを直しただけなのに、ビルドが終わるまでコーヒーを2杯も飲んでしまった……」なんて経験、エンジニアなら誰しも一度はあるはずです。...
GCC / Clang (C言語)

【テクニカル・上級編】LLVM bitcode (.bc) を直接操作する:Clangフロントエンドをスキップして最適化パイプラインをハックする方法 – 実行環境・ランタイム・コンパイラ生産性向上バイブル

序:なぜ今、Clangフロントエンドを捨て、LLVM Bitcodeを直接ハックするのかコンパイラの最適化パスは、長年の研究とエンジニアリングの結晶である。`-O3`や`-flto`(Link-Time Optimization)を叩けば、...
GCC / Clang (C言語)

【実務・中級編】LLVM bitcode (.bc) を直接操作する:Clangフロントエンドをスキップして最適化パイプラインをハックする方法 – 実行環境・ランタイム・コンパイラ生産性向上バイブル

こんにちは。開発現場の底上げを担うテックリードの皆さん。日々のコーディングで「なぜコンパイラはこの些細な冗長性を消し去ってくれないのか」「俺が書いた意図通りのレジスタ割り当てやループアンロールを、なぜ安全マージンをとって日和るのか」と、Cコ...
スポンサーリンク