From 03e0e8a0d7228b6ff1f0af39e2c040a4e425973d Mon Sep 17 00:00:00 2001 From: Lasse Collin Date: Sat, 22 Mar 2008 14:18:29 +0200 Subject: Added autoconf check to detect if we can use arithmetic right shift for optimizations. --- m4/ax_c_arithmetic_rshift.m4 | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 m4/ax_c_arithmetic_rshift.m4 (limited to 'm4/ax_c_arithmetic_rshift.m4') diff --git a/m4/ax_c_arithmetic_rshift.m4 b/m4/ax_c_arithmetic_rshift.m4 new file mode 100644 index 00000000..3c183445 --- /dev/null +++ b/m4/ax_c_arithmetic_rshift.m4 @@ -0,0 +1,36 @@ +##### http://autoconf-archive.cryp.to/ax_c_arithmetic_rshift.html +# +# SYNOPSIS +# +# AX_C_ARITHMETIC_RSHIFT +# +# DESCRIPTION +# +# Checks if the right shift operation is arithmetic. +# +# This macro uses compile-time detection and so is cross-compile +# ready. +# +# LAST MODIFICATION +# +# 2006-12-12 +# +# COPYLEFT +# +# Copyright (c) 2006 YAMAMOTO Kengo +# +# Copying and distribution of this file, with or without +# modification, are permitted in any medium without royalty provided +# the copyright notice and this notice are preserved. + +AC_DEFUN([AX_C_ARITHMETIC_RSHIFT], [ + AC_CACHE_CHECK([whether right shift operation is arithmetic], + [ax_cv_c_arithmetic_rshift], + [AC_COMPILE_IFELSE([[int dummy[((-1 >> 1) < 0) ? 1 : -1];]], + [ax_cv_c_arithmetic_rshift=yes], + [ax_cv_c_arithmetic_rshift=no])]) + if test "x$ax_cv_c_arithmetic_rshift" = xyes; then + AC_DEFINE([HAVE_ARITHMETIC_RSHIFT], [1], + [Define to 1 if the right shift operation is arithmetic.]) + fi +]) -- cgit v1.2.3