xdiff/histogram: remove tail recursion