[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

タグ

gccに関するbull2のブックマーク (5)

  • ホワット・ア・ワンダフル・ワールド Optimizing direct threaded code by selective inlining

    東大さんで今,mini-python のインタプリタを作るという演習をやっているそうな. んで,今 twitter の柱の hayamizu 氏を筆頭に,空前の VM (仮想マシン) ブームが起きている感じ. ちなみに,仮想マシンので僕が読んで良かったのは,Java 仮想マシン仕様の第二版と,コンパイラとバーチャルマシンってかなぁ (そんなに詳しくない). ところで,仮想マシンの構造ってのは,ナイーブには単純で,ひたすら switch 文で命令を引いて実行するだけ. なので,switch 文をテーブルに展開して,直接命令のコードの場所に goto したりする最適化が非常に効く.というのがこの論文. Optimizing direct threaded code by selective inlining (PDF) # 追記 : あ,ACM ポータルの論文は,北大ドメインからじゃないと

    bull2
    bull2 2007/11/22
  • yunoの雑記帳 - ThreadLocalStorage

    スレッドローカルストレージ(Thread-Local Storage)に関するメモ。 スレッド固有ストレージ(Thread-Specific Storage)、 またはスレッド固有データ(Thread-Specific Data)とも呼ばれる。 間違いがあったらごめんね。 何それ † 簡単に言うと、スレッドごとに異なるグローバル変数(static変数でも良い)。 通常のグローバル変数は、プロセスごとに別々で、スレッド間では共有されるけれども、TLSはスレッドごとに別々の記憶領域を持つ。 VC++では以下のように宣言する。 __declspec(thread) int x; __declspec(thread) extern int y; __declspec(thread) static int z; gccでは以下のように宣言する。 __thread int x; extern __th

  • gccのx86インラインアセンブリに関して

    GCCでインラインアセンブリを使用 する方法と留意点等 for x86  (1999〜2006年10回改訂、2006年1月22日注意を追加、最終更新日2006年5月27日) 文: A. SAITOH <s-akira at users.sourceforge.net>  home ※システム名、CPU名は一般に開発会社の登録商標です。 以下の情報はあまり過度に信用しないで下さい。より正確な情報は、asやgccのinfoから得て下さい。 個々のプロセッサ命令の解説はここでは述べません。そのような技術資料は、インテルやAMDのウェブ サイトのdeveloper向けのページからpdf形式で入手できます。 以下の文及びプログラム例の運用結果に関して、筆者は一切責任を負いません。 参考文献 [0] D. Stancevic, K. Scheibler, J. Leto, Linux Assembly

  • DSAS開発者の部屋:オープンソースを楽しむエンジニアの一日 〜 コードを楽しく読む工夫

    C言語で書かれたソースコードを読んでいるとき、関数ポインタから呼び出されている機能の実体がどこに書かれているのかを探すのに苦しんだ経験はありませんか? 私はあります、いっぱいあります!! そんなときはどうするかというと・・・ 手順1: まずは気分転換をする! 手順2: そして気合いを入れ直す! 手順3: さらに気力で読み砕く! 手順4: 最後に根性で発見する! これが、ごく一般的な作業手順(?)かと思います・・・(ごめんなさい嘘です) でもまあ、実際にここまで出来れば、そのプログラムの大まかな構成とか癖みたいなものはだいたい把握できているはずなので、他の関数ポインタについてもある程度当たりをつけて見つけだすことが出来るようにはなるかと思います。 ・・・・・が、、できれば気合いと根性を使わずに追えるなら追いたいのが人情ですよね。 straceやltraceを使えばシステムコールやライブラリコ

    DSAS開発者の部屋:オープンソースを楽しむエンジニアの一日 〜 コードを楽しく読む工夫
    bull2
    bull2 2007/05/25
    プロファイリング関数でコールトレースする
  • Wataru's memo(2006-08-13)

    ● [Publish] レイアウトと束見(つかみほん) GCCプログラミング工房 GCCプログラミング工房書籍化の話は、連載終了前から上がっていたのですが、改めて全体を見直してみると、過去の原稿を単純に再編集するだけでは使えそうもないことが分かってきました。 私は、几帳面で計画性のあるライターとは正反対のルーズ野郎でして、編集部の方々にはご迷惑のかけっぱなしでした。小学校時代の夏休み帳に象徴されるように、目前に締め切りが迫り、おしりに着火しないと走り出さないタイプなのです。 このような「かちかち山の狸」状態で執筆した原稿は、当の人はベストを尽くしているつもりでも、当然のことながらやっつけ仕事に終わってしまう傾向があります。 毎回毎回のオチや盛り上がりが要求される連載とはことなり、書籍は一冊の世界の中で、完成した物語を作り出さなければなりません。じっくりと腰を据え、全体を俯瞰しながら一幅

    bull2
    bull2 2006/08/20
    ELFの解説が詳しそう。Linkers & Lodersよりも詳しそう
  • 1