ASM compiler