I hate to be this guy, but - as neat as this solution is - can we please stop saying 'x64'? Intel 64, amd64 or x86_64 are fine, but x64 just sounds so wrong. It seems completely ignorant of why the architecture is called x86 to begin with.
x86 is inaccurate anyway, since people actually mean >= Pentium.