Just for the record, I spotted an error myself: My ppc_ld macro has the wrong argument order (instruction instead of assembler command), so that just replacing ppc_lwz with ppc_ld produces incorrect instructions. Will check for other order problems.