ToDo:
printf("%lld\n", (long long)020000000000); printf("%lld\n", (long long)0x80000000); printf("%lld\n", (long long)-2147483648); printf("%lld\n", (long long)020000000001); printf("%lld\n", (long long)0x80000001); printf("%lld\n", (long long)-2147483649);
の結果を言える人はえらいと思う。 でまぁこれ関係は標準ちゃんとあるのかなぁ…
(02:38)
↑の問題は標準とか調べるのかったるいので適当にごまかした。 でも本当は INT_MIN とかとかかわるから きちんと調べた方がいいなー。
あとはまぁ少しで tcc -run tcc -run tcctest.c が動くはず。 現に tcc -run tcc -run tcc.c は動いてるし。
(02:53)
吐くコードを PIC にしたから本格的に tcc -run を修正できるように思って、 とりあえず text_section に GOT と PLT を吐いて、 text_section の realloc が起きないようにすれば良い… と思ったがこれは勘違いだった。 data_section とかが遠いので状況は全然よくなっていない。
まぁ結局 section 混ぜて対応することに。
(03:29)
arc 入れてみたけどファイル読み込んで起動する方法がわからんとかひどいな。 そしてぐぐるとみんな取説通りに REPL 起動して ちょっとした計算とかしてわいわいきゃっきゃっしてるだけでこまる
(02:56)
https://www.hatena.ne.jp/shop/star
なにこれ超ほしい。 このためにはてなポイント買うのもアホらしいので 適当に質問とか答えてみるとかかな…!
(03:04)
とくいなコンピュータというカテゴリで検索して 一通り見たのに一問しか答えられるのがなかったのでかなしくなった。
でジャンルを特定せずに一覧を見たらカレーとかあって発作的に解答して、 引き続きジャンル特定せずしばらく眺めてたら screen と hardcopy を紹介すれば良さそうなもの、 ImageMagick で composite を使えば良さそうなもの、 をそれぞれ見つけて解答してみた。
100円相当の100ポイント稼ぐのに1時間30分とか 時間の無駄だった…と言いたいところだけど、 最後の3つは解答するために色々調べるのが普通に役にたった。 composite コマンドとか知らなかったし、 convert で簡単な絵が描けるのも知らなかった。
あと conjure とかいう言語まであるのね ImageMagick あなどりがたし。
http://www.imagemagick.org/script/conjure.php
(04:34)
http://d.hatena.ne.jp/hzkr/20090209#p1
逆に (式の長さ/変数の数) を maximize しながら SATISFIABLE にするとか、 (式の長さ/変数の数) を minimize しながら UNSATISFIABLE にするとかいうゲームはありえないものなのかな、 ふと思った。
その値が 1.0 の時に UNSATISFIABLE にするのは明らかに無理で、 まぁどっかに下限があるんだよな。 てかそれが最後の段落の話か。 なんかでも almost surely unsatisfiable ってどいう定義なんだろ
(14:10)
ふと思ったのだけど、 vimperator の y ってコピーするんだけど、これ yank なんだよな。 でまぁ Emacs の yank はペーストであると。 英語的なニュアンスはよくわかってないけど、
【他動】〜をグイッと引っ張る、グイッと引っ張り抜く、引き出す
とかだと、まぁコピーペースト両方に違和感無い感じの意味っぽい。 どっちかというとペーストは不自然な感じもあるけど。
というわけで vimperator から emacs にコピペする時は C&P じゃなくて Y&Y なんだなぁとか。
(16:21)
http://itpro.nikkeibp.co.jp/article/COLUMN/20080104/290425/
なんか wo さんがなつかしいものをはっておられたので見てみた。
久々にこれ見てみて思ったのは、これ難しいなぁということだった。 なんというかマジメに反論することができないくらい おかしなことが書かれてるのに、 エンジニヤーじゃない人はかなりコンピュータに詳しい人でも おかしいと判断しにくいんだよな。
ニセ科学の水商売なんかと比べると、
とかそんなかんじかねえ。
や、まあメモリ最適化ツールとかのこと考えりゃ当たり前のことではあるか。
(02:55)
GCC ML からメモ。
http://gcc.gnu.org/wiki/DebuggingGCC
http://gcc.gnu.org/ml/gcc/2004-03/msg01195.html
後者は見たことなかったきがする
(03:33)
http://d.hatena.ne.jp/ku-ma-me/20090407/p2
あるえーこれどうなってるの。
うーむコピペしてみてタネはわかったけど。
(02:13)
http://b.hatena.ne.jp/entry/http://www.222.co.jp/netnews/article.aspx?asn=34805
いろいろよくわからん話だなすごい。
OO についてのレポートをもらうよりは普通に本買った方がいい気がするし、 本当に落ちたんだとしてもなんかそんなんで落とすってなんなの的な
(02:28)
http://mono.kmc.gr.jp/~yhara/d/?date=20090407#p02
だんだん DSL 慣れしてきてしまって 驚きにくくなってきてしまっている気がするんだけど、 ここまで来るとすごいなぁ。
(00:03)
PIC を生成するのは結構めどい、 というか綺麗な構造をまた一つ破壊する気がするなぁ。 gen_modrm で modrm 吐いてて、 そこに PIC になるような補正をかけるのが一番ラクだと思ったんだけど、 load する時は
mov (GOT), %rax mov (%rax), %rax
とかで store の時は
mov (GOT), %rax mov %rdx, (%rax)
などと違うコード吐かんといかん。 レジスタ一個余分に使うんだなぁ。
ついでに lea とかで
lea (hoge), %rax
とやってたアドレス参照とかは
mov (GOT), %rax
とかに変えんといかん。
(00:48)
http://www.vesa.org/public/VBE/vbe3.pdf
をだらだら読む。 protected mode から vesa の API を直接さわるには PMID って文字列を BIOS の空間から探して、 checksum を調べて、良さそうならコピって使う、 というようなことをすれば良いみたい。 でも qemu とかの BIOS は PMID 持ってないぽいんだよなぁ。
http://www.osdcom.info/component/option,com_mamboboard/Itemid,36/func,view/id,124/catid,1/
http://forum.osdev.org/viewtopic.php?f=1&t=19183
まぁ flipping 一発しか呼ばない BIOS コールで そんなに遅くなるとも思えないので、 遅いのは VRAM に自力書き込みしてる点かなぁとか思うと、 どっちかというと見るべきはこっちな気がしてきた。 BitBltLin とか速くなりそうだ。
http://www.vesa.org/public/VBE/VBE-AF07.pdf
(01:17)
よくわかってないけど、
って感じなのかな。 で、今のところ成功した証拠がなくて、 なんにせよ衛星&&成功は無さそうな感じ、と。
(01:38)
fsync を LD_PRELOAD で殺すとどうか、 という話になって殺してみたら結構良くなった気がする。 というか計測してみると fsync に40秒以上かかっていたりする。 ただ fsync しなくなるということは クッキーとかそのへんのデータがぶっこわれて起動しなくなるとかはありそうだから、 .mozilla バックアップはしておいたほうがいいだろうなぁ。
(00:53)
TCC はなんか Lua が動かねーよということだったので ちょこちょこ修正したら動くようになった。
(03:18)
ちゃんとありとあらゆるパターンのテストをやるべきだと思うんだよな。 たぶん必要なのは、 lib.c と main.c を用意して、
の4種類がきちんと動いてるか確認した上で、
の16通りのパターンで生成してチェックしたいと思う。 あとおまけとして lib.o main.o から作るケースも欲しいから、 そっちもあわせると 24 通りかねえ。
(17:54)
http://www.nicovideo.jp/watch/sm1273914
いいねえ。 ボーカルってよりはやっぱ楽器なんだよなぁ的な。 ミク製のゲームミュージックとか適当に探してみる。
http://www.nicovideo.jp/watch/sm1254297
http://www.nicovideo.jp/mylist/3531264
akita
(18:42)
なんかできねーなーと思ってたんだけど、 SHELL が /bin/zsh なのが悪いぽい。
% LD_LIBRARY_PATH=. SHELL=/bin/sh gdb ./main_gcc_tcc
などで解決
(21:07)
前 | 2025年 5月 |
次 | ||||
日 | 月 | 火 | 水 | 木 | 金 | 土 |
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
全てリンクフリーです。 コード片は自由に使用していただいて構いません。 その他のものはGPL扱いであればあらゆる使用に関して文句は言いません。 なにかあれば下記メールアドレスへ。
_ wo [ループ回数の定数がsigned intをオーバーフローしているという、その挙動に依存してるコードに遭遇したことがあっ..]
_ shinh [となると自信を持って使える言語は brainfuck くらいですね… 情報ありがとうございます。挙動違うのは厄..]
_ wo [brainfuckはワード長が決まってたか決まってなかったかあやふやなので僕はbrainfuckも使えないですね。 ..]
_ shinh [おお、良さげな本の紹介ありがとうございます。ですが明日から出張なので買うの忘れそうだ…]