/* It is safe to use __sync CAS built-in on this architecture. */
# define AO_USE_SYNC_CAS_BUILTIN
# endif
-# include "atomic_ops/sysdeps/gcc/x86_64.h"
+# ifdef __ILP32__
+# ifndef AO_USE_PENTIUM4_INSTRS
+# define AO_USE_PENTIUM4_INSTRS
+# endif
+# include "atomic_ops/sysdeps/gcc/x86.h"
+# else
+# include "atomic_ops/sysdeps/gcc/x86_64.h"
+# endif
# endif /* __x86_64__ */
# if defined(__ia64__)
# include "atomic_ops/sysdeps/gcc/ia64.h"
# if (__INTEL_COMPILER > 1110) && !defined(AO_USE_SYNC_CAS_BUILTIN)
# define AO_USE_SYNC_CAS_BUILTIN
# endif
-# include "atomic_ops/sysdeps/gcc/x86_64.h"
+# ifdef __ILP32__
+# ifndef AO_USE_PENTIUM4_INSTRS
+# define AO_USE_PENTIUM4_INSTRS
+# endif
+# include "atomic_ops/sysdeps/gcc/x86.h"
+# else
+# include "atomic_ops/sysdeps/gcc/x86_64.h"
+# endif
# endif /* __x86_64__ */
# endif
#endif
#define AO_HAVE_compare_double_and_swap_double_full
#endif /* AO_WEAK_DOUBLE_CAS_EMULATION */
-#endif /* AO_CMPXCHG16B_AVAILABLE */
-
-#ifdef __ILP32__
-# define AO_T_IS_INT
-#endif
+#endif /* !AO_CMPXCHG16B_AVAILABLE */