* Condition #inclusion of AIXDataTypes.h on the _AIX preprocessor symbol to
prevent extra I/O on non-AIX systems. Thus, no #ifdef in AIXDataTypes.h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17257
91177308-0d34-0410-b5e6-
96231b3b80d8
--- /dev/null
+//===-- include/Support/AIXDataTypesFix.h - Fix datatype defs ---*- C++ -*-===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+//
+// This file overrides default system-defined types and limits which cannot be
+// done in DataTypes.h.in because it is processed by autoheader first, which
+// comments out any #undef statement
+//
+//===----------------------------------------------------------------------===//
+
+// No include guards desired!
+
+#ifndef SUPPORT_DATATYPES_H
+#error "AIXDataTypesFix.h must only be included via DataTypes.h!"
+#endif
+
+// GCC is strict about defining large constants: they must have LL modifier.
+// These will be defined properly at the end of DataTypes.h
+#undef INT64_MAX
+#undef INT64_MIN
#include <stdint.h>
#endif
-// Fix AIX definitions of INT64_{MIN,MAX}
-#include "llvm/Support/DataTypesFix.h"
+#ifdef _AIX
+#include "llvm/Support/AIXDataTypesFix.h"
+#endif
// Handle incorrect definition of uint64_t as u_int64_t
#ifndef HAVE_UINT64_T
+++ /dev/null
-//===-- include/Support/DataTypesFix.h - Fix datatype defs ------*- C++ -*-===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file was developed by the LLVM research group and is distributed under
-// the University of Illinois Open Source License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-//
-// This file overrides default system-defined types and limits which cannot be
-// done in DataTypes.h.in because it is processed by autoheader first, which
-// comments out any #undef statement
-//
-//===----------------------------------------------------------------------===//
-
-#ifndef SUPPORT_DATATYPESFIX_H
-#define SUPPORT_DATATYPESFIX_H
-
-#include "llvm/Config/config.h"
-
-#if defined(_POWER) && defined(_AIX)
-// GCC is strict about defining large constants: they must have LL modifier.
-#undef INT64_MAX
-#define INT64_MAX 9223372036854775807LL
-#undef INT64_MIN
-#define INT64_MIN (-INT64_MAX-1)
-#endif
-
-#endif /* SUPPORT_DATATYPESFIX_H */