X-Git-Url: https://git.kernel.dk/?a=blobdiff_plain;f=arch%2Farch.h;h=8cafa118af2c036e7afc88a93bb7602ca221626b;hb=ab4800473091e0c3bd43d9e96ed0fa406d231186;hp=8d06c911abc33dee73331cefa3e7b0933464903b;hpb=697a606cc0af1c39ac18998c344a522199accb36;p=fio.git diff --git a/arch/arch.h b/arch/arch.h index 8d06c911..8cafa118 100644 --- a/arch/arch.h +++ b/arch/arch.h @@ -1,6 +1,12 @@ #ifndef ARCH_H #define ARCH_H +#ifdef __WORDSIZE +#define BITS_PER_LONG __WORDSIZE +#else +#define BITS_PER_LONG 32 +#endif + enum { arch_x86_64, arch_i386, @@ -10,13 +16,18 @@ enum { arch_alpha, arch_sparc, arch_sparc64, + arch_arm, + arch_sh, + arch_hppa, + + arch_generic, }; #if defined(__i386__) #include "arch-x86.h" #elif defined(__x86_64__) #include "arch-x86_64.h" -#elif defined(__powerpc__) || defined(__powerpc64__) +#elif defined(__powerpc__) || defined(__powerpc64__) || defined(__ppc__) #include "arch-ppc.h" #elif defined(__ia64__) #include "arch-ia64.h" @@ -28,8 +39,23 @@ enum { #include "arch-sparc.h" #elif defined(__sparc64__) #include "arch-sparc64.h" +#elif defined(__arm__) +#include "arch-arm.h" +#elif defined(__mips__) || defined(__mips64__) +#include "arch-mips.h" +#elif defined(__sh__) +#include "arch-sh.h" +#elif defined(__hppa__) +#include "arch-hppa.h" +#else +#warning "Unknown architecture, attempting to use generic model." +#include "arch-generic.h" +#endif + +#ifdef ARCH_HAVE_FFZ +#define ffz(bitmask) arch_ffz(bitmask) #else -#error "Unsupported arch" +#include "../lib/ffz.h" #endif #endif