2008-08-01から1ヶ月間の記事一覧

LLVM勉強会

行ってきました。大変楽しかった。適当にベンチ取って結果発表したのでそのスライド置いときます。現地で作ったけどやはり mkp.rb は性にあうなぁ。http://shinh.skr.jp/llvmbench/000.html何が言いたいかよくわからんけど、言いたかったことは SSA 大変だけ…

valgrind (1)

valgrind コマンドを叩くと普通に main が動きます。 main は coregrind/launcher-linux.c にあります。ごちゃごちゃと環境を調べたり tool を調べたりした後、情報を残すために環境変数をいじったりした後、即 tool を execve して終了します。で、 tool な…

だいぶ前に書いたんだけど、続き書く気があるのかあやしくなってきた感なのではっとく。

Symbolic Polyglot

久々に優雅な時間を過ごしました。もう少し縮みますけど見た目を優先した面もあり。http://ja.doukaku.org/comment/7271/まめさんの偉業を見てから二大チューリング完全言語の共演を見たかったのでした。Symbolic Polyglot Quine とかもできるだろうけど大変…

Rubygrind

あんま深く考えず valgrind を Ruby の head のテストに適用してみたところ、結構もにょもにょ漏れてるもんだなぁと気付いたので、いくつか修正してみたりしたのですが、その時案外困るのが、リークする最小のコードが簡単に作れない、ってことでした。 valg…

Unofficial ICFP Programming Contest 2008 Ranking

超適当に書いてみました。http://shinh.skr.jp/icfp08/まだやるべきことあるけどとりあえず…

valgrind で main 奪う

ことほどさように main は全人類の至宝 LD_PRELOAD をもってしても簡単に奪えないということは、 main 蹂躙厨の間では有名な事実なのですが、 valgrind 使うと割に簡単なことに気付きました。いつも通り Hello, world を書きます。 #include <stdio.h> int main() { p</stdio.h>…

「遅い部分は C で書き直せ」はウソだった! という話

http://d.hatena.ne.jp/Gimite/20080802/1217647596でちょっと思い出した、前からやってみたかった実験をやってみたらだいたい思った通りな感じだった。 class Fixnum def times i = 0 s = self while i < s yield i i += 1 end end end s = 0 1000000.times…

main_hook / sdlboot / libGPL

前回の話は解決案1 が MacOSX でできました。この中に入ってる sdlboot の方がまぁ完全性は高いんじゃないかなーと思います。使いかたはだいたい同じ。http://shinh.skr.jp/binary/main_hook.tgzでついでに main_hook というライブラリにしておきました。 CP…

SDL + MacOSX + any lang

たぶん SDL + MacOSX の非 C で起きる問題を解決できそうな方法を実装してみました。とりあえず MizuGame (C#) 動いた。http://d.hatena.ne.jp/fslasht/20080804#1217853380下記のファイルをhttp://shinh.skr.jp/osxbin/sdlboot.tgz展開して出てきた sdlboot…

GCC plugin branch

前回: http://d.hatena.ne.jp/shinichiro_h/20080803#1217701533GEM のこと見てたら plugin branch なんてあるんだなーと気付きました。 GEM 同様実装はすごい簡単で、要所要所で適当に dlopen した共有オブジェクトの関数呼ぶだけみたいです。技術的には全…

あと

GEM の紹介とかは gem-1.7/examples 以外にも GNU C Compiler Internals とかにもある。http://en.wikibooks.org/wiki/GNU_C_Compiler_Internals/GCC_4.1これは gccint.info と違って短いのでヘタレでも読めます。ちょっと概略すぎる気もしますが。

Ruby じゃない GEM

http://www.atdot.net/~ko1/diary/200807.html#d17こういうのはえーと GEM とかあったような(無論名前とか覚えてなかったけど)…ということで遊んでみました。 GEM って何かっていうと、まぁ GCC のそこらこちらに適当にフックがかけられるようになってるとか…

なにかあれば下記メールアドレスへ。
shinichiro.hamaji _at_ gmail.com
shinichiro.h