You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
[What Every C Programmer Should Know About Undefined Behavior #1/3 の翻訳です。] LLVMでコンパイルしたコードは、最適化を有効にしているとたまにSIGTRAPシグナルを生成するのはなぜなのか、と聞かれることがある。いろいろ調べたあと、(X86での話だが) Clangは "ud2" インストラクションを生成していたことがわかった。"ud2" は__builtin_trap()が生成するインストラクションと同じものだ。[訳注: #UD例外を発生させる命令。ソフトウェアが#UD例外をハンドルできているかテストするために使われる。つまり、ソースコードが未定義な振る舞いを使っていたから、LLVMはud2インストラクションを生成したのであって、LLVMのバグではない、ということ] こういう問題は幾つかあって、すべて、Cの未定義な振る
Chrome 38 was released early October 2014. It is the first release where the Linux binaries shipped to users are built by clang. Previously, this was done by gcc 4.6. As you can read in the announcement email, the switch happened without many issues. Performance stayed roughly the same, binary size decreased by about 8%. In this post I'd like to discuss the motivation for this switch. MotivationTh
Written by Mattt June 16th, 2014 This article has been translated into: 中文 Diagnostics combine logic with analytics to arrive at a conclusion. It’s science and engineering at their purest. It’s human reasoning at its most potent. Within the medical profession, a diagnosis is made through instinct backed by lab samples. For industrial manufacturing, one diagnoses a product fault through an equal ap
Clang/LLVM(Low Level Virtual Machine)とは、CやObjective-Cなどのコンピュータ言語のコンパイラ環境です。 最近ではiOSやMac OS X、FreeBSDなどのOSでは、デファクトスタンダードであったGCC(GNUコンパイラコレクション)からLLVM/Clangへの置き換えが進みつつあります。 本書では、Clang/LLVMの仕組みと使い方(カスタマイズ法など)、Clang/LLVM独自のライブラリの使い方などについて詳細な解説を行っています。 はじめに CHAPTER 1 LLVMとは 1 LLVMの概要 2 コンパイラの仕組み 3 特徴 4 対応プラットフォーム 5 LLVMプロジェクトの一覧 6 ライセンス CHAPTER 2 セットアップ 1 ビルド環境の準備 2 ソースコードを取得する 3 makeでビルドする 4 CMakeでビルド
TranslationUnitDecl 0x1028218d0 <<invalid sloc>> |-TypedefDecl 0x102821dd0 <<invalid sloc>> __int128_t '__int128' |-TypedefDecl 0x102821e30 <<invalid sloc>> __uint128_t 'unsigned __int128' |-TypedefDecl 0x102821ec0 <<invalid sloc>> SEL 'SEL *' |-TypedefDecl 0x102821f90 <<invalid sloc>> id 'id' |-TypedefDecl 0x102822060 <<invalid sloc>> Class 'Class *' ...(省略)... | `-ParmVarDecl 0x1053064c0 <col:30
Key–value coding — valueForKeyPath: and setValue:forKeyPath: — is very useful for converting data from one format to another, such as copying from a property list-like structure (e.g. deserialized JSON) into model objects proper. This avoids a lot of boilerplate typically found in, for example, Java-based systems1. On the Mac, with Cocoa Bindings you can throw together a simple UI in a flash, sett
A weekly newsletter covering developments in LLVM, Clang, and related projects. A new issue released every Monday. Subscribe now! LLVM Weekly - #538, April 22nd 2024 LLVM Weekly - #537, April 15th 2024 LLVM Weekly - #536, April 8th 2024 LLVM Weekly - #535, April 1st 2024 LLVM Weekly - #534, March 25th 2024 LLVM Weekly - #533, March 18th 2024 LLVM Weekly - #532, March 11th 2024 LLVM Weekly - #531,
このドキュメントは、 Clang 3.4 documentation をテキトーな日本語にゆるふわ翻訳しているドキュメントです。誤解釈などがたくさんあると思いますので信用しないでください。 Using Clang as a Compiler - Clangをコンパイラとして使う Clangコンパイラユーザーズマニュアル Clangの言語拡張 アドレスサニタイザ スレッドサニタイザ メモリサニタイザ モジュール よくある質問 (FAQ) Using Clang as a Library - Clangをライブラリとして使う アプリケーションに合ったインターフェースを選ぶ Clangの外のサンプル ClangのAST(抽象構文木)のイントロダクション Libツール Libフォーマット Clangのプラグイン ASTFrontendActionベースのRecursiveASTVisitorの書き
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く