一行に詰め込むのは何故ですか?

よく制御文の中で演算式を見ます。

if (x > (a+b)) {
    printf("OK");
}

手間だからなのかな? 私は、

tmp = a + b;
if (x > tmp) {
	printf("OK");
}

と、計算結果を先に出しておいてから比較します。

昔は CPU レジスタに格納され、若干処理が速い為に意識して書いていましたが、今の マルチコア CPU なら必要ないでしょう*1
処理速度を気にしないにしても、この方がデバッグする時が楽です。ソースレベルデバッグなら、ここで止まれば値がすぐにわかります。printf デバッグなら、tmp の値を出力するのが容易です。そして式が複雑になると、比較したい値が正しいのか、比較演算子が正しいのか、すぐに判断出来なくなります。
一行に詰め込むと、可読性が悪くなると思うのですが、どうでしょうか?

*1:それにコンパイラが最適化をしてくれますしね。