it would have probably been faster to use bit shifting rather than addition for
acc += acc
acc = acc << 1
n = n << 1
The method he uses is still requiring the computer to addition. Which is fast, but bitshifting as the sample above litterally means acc += acc without the math. It bumps the bit's up.
Using a custom mathlib is common for the bleeding edge game engines. However it's not that simple of a job. Mostly the work isn't the math. It's that this form of math works best for INT32 and INT64 based math. The hurdle is handling FLOAT32 or FLOAT64 math operations.
He is using the model of doubling up. Once the add it's higher it's just a system of reducing the over amount by the remaining.
I remember hunting down a Java mathlibrary back when I was trying to do games in MIDP Java for mobile phones. before Smart Phone :D