this code has been replaced by portable C code that works on all archs. the old asm needs to be removed or ctors/dtors will run twice.