OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-old/] [gcc-4.2.2/] [config/] [intdiv0.m4] - Diff between revs 154 and 816

Only display areas with differences | Details | Blame | View Log

Rev 154 Rev 816
# intdiv0.m4 serial 1 (gettext-0.11.3)
# intdiv0.m4 serial 1 (gettext-0.11.3)
dnl Copyright (C) 2002 Free Software Foundation, Inc.
dnl Copyright (C) 2002 Free Software Foundation, Inc.
dnl This file is free software, distributed under the terms of the GNU
dnl This file is free software, distributed under the terms of the GNU
dnl General Public License.  As a special exception to the GNU General
dnl General Public License.  As a special exception to the GNU General
dnl Public License, this file may be distributed as part of a program
dnl Public License, this file may be distributed as part of a program
dnl that contains a configuration script generated by Autoconf, under
dnl that contains a configuration script generated by Autoconf, under
dnl the same distribution terms as the rest of that program.
dnl the same distribution terms as the rest of that program.
 
 
dnl From Bruno Haible.
dnl From Bruno Haible.
 
 
AC_DEFUN([gt_INTDIV0],
AC_DEFUN([gt_INTDIV0],
[
[
  AC_REQUIRE([AC_PROG_CC])dnl
  AC_REQUIRE([AC_PROG_CC])dnl
  AC_REQUIRE([AC_CANONICAL_HOST])dnl
  AC_REQUIRE([AC_CANONICAL_HOST])dnl
 
 
  AC_CACHE_CHECK([whether integer division by zero raises SIGFPE],
  AC_CACHE_CHECK([whether integer division by zero raises SIGFPE],
    gt_cv_int_divbyzero_sigfpe,
    gt_cv_int_divbyzero_sigfpe,
    [
    [
      AC_TRY_RUN([
      AC_TRY_RUN([
#include <stdlib.h>
#include <stdlib.h>
#include <signal.h>
#include <signal.h>
 
 
static void
static void
#ifdef __cplusplus
#ifdef __cplusplus
sigfpe_handler (int sig)
sigfpe_handler (int sig)
#else
#else
sigfpe_handler (sig) int sig;
sigfpe_handler (sig) int sig;
#endif
#endif
{
{
  /* Exit with code 0 if SIGFPE, with code 1 if any other signal.  */
  /* Exit with code 0 if SIGFPE, with code 1 if any other signal.  */
  exit (sig != SIGFPE);
  exit (sig != SIGFPE);
}
}
 
 
int x = 1;
int x = 1;
int y = 0;
int y = 0;
int z;
int z;
int nan;
int nan;
 
 
int main ()
int main ()
{
{
  signal (SIGFPE, sigfpe_handler);
  signal (SIGFPE, sigfpe_handler);
/* IRIX and AIX (when "xlc -qcheck" is used) yield signal SIGTRAP.  */
/* IRIX and AIX (when "xlc -qcheck" is used) yield signal SIGTRAP.  */
#if (defined (__sgi) || defined (_AIX)) && defined (SIGTRAP)
#if (defined (__sgi) || defined (_AIX)) && defined (SIGTRAP)
  signal (SIGTRAP, sigfpe_handler);
  signal (SIGTRAP, sigfpe_handler);
#endif
#endif
/* Linux/SPARC yields signal SIGILL.  */
/* Linux/SPARC yields signal SIGILL.  */
#if defined (__sparc__) && defined (__linux__)
#if defined (__sparc__) && defined (__linux__)
  signal (SIGILL, sigfpe_handler);
  signal (SIGILL, sigfpe_handler);
#endif
#endif
 
 
  z = x / y;
  z = x / y;
  nan = y / y;
  nan = y / y;
  exit (1);
  exit (1);
}
}
], gt_cv_int_divbyzero_sigfpe=yes, gt_cv_int_divbyzero_sigfpe=no,
], gt_cv_int_divbyzero_sigfpe=yes, gt_cv_int_divbyzero_sigfpe=no,
        [
        [
          # Guess based on the CPU.
          # Guess based on the CPU.
          case "$host_cpu" in
          case "$host_cpu" in
            alpha* | i[34567]86 | m68k | s390*)
            alpha* | i[34567]86 | m68k | s390*)
              gt_cv_int_divbyzero_sigfpe="guessing yes";;
              gt_cv_int_divbyzero_sigfpe="guessing yes";;
            *)
            *)
              gt_cv_int_divbyzero_sigfpe="guessing no";;
              gt_cv_int_divbyzero_sigfpe="guessing no";;
          esac
          esac
        ])
        ])
    ])
    ])
  case "$gt_cv_int_divbyzero_sigfpe" in
  case "$gt_cv_int_divbyzero_sigfpe" in
    *yes) value=1;;
    *yes) value=1;;
    *) value=0;;
    *) value=0;;
  esac
  esac
  AC_DEFINE_UNQUOTED(INTDIV0_RAISES_SIGFPE, $value,
  AC_DEFINE_UNQUOTED(INTDIV0_RAISES_SIGFPE, $value,
    [Define if integer division by zero raises signal SIGFPE.])
    [Define if integer division by zero raises signal SIGFPE.])
])
])
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.