#ifndef INCLUDE_ASM_H #define INCLUDE_ASM_H #if !defined(M2CTX) && !defined(PERMUTER) #ifndef INCLUDE_ASM #define INCLUDE_ASM(FOLDER, NAME) \ __asm__( \ ".section .text\n" \ " .set noat\n" \ " .set noreorder\n" \ " .include \"" FOLDER "/" #NAME ".s\"\n" \ " .set reorder\n" \ " .set at\n" \ ) #endif #ifndef INCLUDE_RODATA #define INCLUDE_RODATA(FOLDER, NAME) \ __asm__( \ ".section .rodata\n" \ " .include \"" FOLDER "/" #NAME ".s\"\n" \ ".section .text" \ ) #endif #if INCLUDE_ASM_USE_MACRO_INC __asm__(".include \"include/macro.inc\"\n"); #else __asm__(".include \"include/labels.inc\"\n"); #endif #else #ifndef INCLUDE_ASM #define INCLUDE_ASM(FOLDER, NAME) #endif #ifndef INCLUDE_RODATA #define INCLUDE_RODATA(FOLDER, NAME) #endif #endif /* !defined(M2CTX) && !defined(PERMUTER) */ #endif /* INCLUDE_ASM_H */