最近家でコードを書かないのは、会社でコード書いてるから、っていうのもあるよな。


…って最近書いたような気がするけど、特に、今週はヤバい。「あー、こういうのが書いてみたかったんだよっ!」って感じに会社で色々と発散されてしまう。
24MHzのCPU(M16C)で125μsecを死守せよと。ループは48回。というわけで、今日は、アセンブリでクロック削るか削らないのかの勝負を。僕の思い付く限界まではいったはず。


で、多分、滅多なことではあれよりは速くならないだろうという自信がある。
…というところまではいいのだけど、ああいう誰も読めない、書けないコードを生み出してしまうのは仕事としてどうなのかなぁ…と、思わないでもない。
今回は、125μという時間が厳しく、しかもM16Cのコンパイラが若干賢くなかった。それで、そのアセンブリ部分以外でも、全体的にループやら、ポインタ操作やらをチマチマチマチマと手動で最適化している。おそらく、ソースからは読めない意図が入りこみまくってるはずだ。
汚くはしてない、と思うけど、誰でも読めるコードからは程遠い。


はたして、こういう場合、僕はどうするのが正しかったのだろうか。もし、これを僕ではない誰かがやってたら、一体どういう対応をしてただろうか。というのが、若干気になるところ。

  • あれを僕しかできないと考えてるのが大きな間違い。普通の人ならもっと美しく速くできる
  • なんか交渉する
  • できないと言って断る


まあ、どうでもいいが。僕は自分のソースなら読めるので困らないし。