aboutsummaryrefslogtreecommitdiffstats
path: root/autoconf/m4/cxx_bidi_iterator.m4
diff options
context:
space:
mode:
authorDan Gohman <djg@cray.com>2007-07-18 16:29:46 +0000
committerDan Gohman <djg@cray.com>2007-07-18 16:29:46 +0000
commitf17a25c88b892d30c2b41ba7ecdfbdfb2b4be9cc (patch)
treeebb79ea1ee5e3bc1fdf38541a811a8b804f0679a /autoconf/m4/cxx_bidi_iterator.m4
downloadexternal_llvm-f17a25c88b892d30c2b41ba7ecdfbdfb2b4be9cc.zip
external_llvm-f17a25c88b892d30c2b41ba7ecdfbdfb2b4be9cc.tar.gz
external_llvm-f17a25c88b892d30c2b41ba7ecdfbdfb2b4be9cc.tar.bz2
It's not necessary to do rounding for alloca operations when the requested
alignment is equal to the stack alignment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40004 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'autoconf/m4/cxx_bidi_iterator.m4')
-rw-r--r--autoconf/m4/cxx_bidi_iterator.m422
1 files changed, 22 insertions, 0 deletions
diff --git a/autoconf/m4/cxx_bidi_iterator.m4 b/autoconf/m4/cxx_bidi_iterator.m4
new file mode 100644
index 0000000..d7de856
--- /dev/null
+++ b/autoconf/m4/cxx_bidi_iterator.m4
@@ -0,0 +1,22 @@
+#
+# Check for bidirectional iterator extension. This is modified from
+# http://www.gnu.org/software/ac-archive/htmldoc/ac_cxx_have_ext_hash_set.html
+#
+AC_DEFUN([AC_CXX_HAVE_BI_ITERATOR],
+[AC_CACHE_CHECK(whether the compiler has the bidirectional iterator,
+ac_cv_cxx_have_bi_iterator,
+[AC_REQUIRE([AC_CXX_NAMESPACES])
+ AC_LANG_PUSH([C++])
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <iterator>
+#ifdef HAVE_NAMESPACES
+using namespace std;
+#endif]], [[bidirectional_iterator<int,int> t; return 0;]])],[ac_cv_cxx_have_bi_iterator=yes],[ac_cv_cxx_have_bi_iterator=no])
+ AC_LANG_POP([C++])
+])
+if test "$ac_cv_cxx_have_bi_iterator" = yes
+then
+ AC_DEFINE(HAVE_BI_ITERATOR,1,[Have bi-directional iterator])
+else
+ AC_DEFINE(HAVE_BI_ITERATOR,0,[Does not have bi-directional iterator])
+fi
+])