libgcc2.c (102798) | libgcc2.c (104764) |
---|---|
1/* More subroutines needed by GCC output code on some machines. */ 2/* Compile this one with gcc. */ 3/* Copyright (C) 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, | 1/* More subroutines needed by GCC output code on some machines. */ 2/* Compile this one with gcc. */ 3/* Copyright (C) 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, |
4 2000, 2001 Free Software Foundation, Inc. | 4 2000, 2001, 2002 Free Software Foundation, Inc. |
5 6This file is part of GCC. 7 8GCC is free software; you can redistribute it and/or modify it under 9the terms of the GNU General Public License as published by the Free 10Software Foundation; either version 2, or (at your option) any later 11version. 12 --- 11 unchanged lines hidden (view full) --- 24FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 25for more details. 26 27You should have received a copy of the GNU General Public License 28along with GCC; see the file COPYING. If not, write to the Free 29Software Foundation, 59 Temple Place - Suite 330, Boston, MA 3002111-1307, USA. */ 31 | 5 6This file is part of GCC. 7 8GCC is free software; you can redistribute it and/or modify it under 9the terms of the GNU General Public License as published by the Free 10Software Foundation; either version 2, or (at your option) any later 11version. 12 --- 11 unchanged lines hidden (view full) --- 24FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 25for more details. 26 27You should have received a copy of the GNU General Public License 28along with GCC; see the file COPYING. If not, write to the Free 29Software Foundation, 59 Temple Place - Suite 330, Boston, MA 3002111-1307, USA. */ 31 |
32/* $FreeBSD: head/contrib/gcc/libgcc2.c 102798 2002-09-01 21:08:29Z kan $ */ | 32/* $FreeBSD: head/contrib/gcc/libgcc2.c 104764 2002-10-10 04:50:29Z kan $ */ |
33 34/* It is incorrect to include config.h here, because this file is being 35 compiled for the target, and hence definitions concerning only the host 36 do not apply. */ 37 38#include "tconfig.h" 39#include "tsystem.h" 40 | 33 34/* It is incorrect to include config.h here, because this file is being 35 compiled for the target, and hence definitions concerning only the host 36 do not apply. */ 37 38#include "tconfig.h" 39#include "tsystem.h" 40 |
41#include "machmode.h" 42 | |
43/* Don't use `fancy_abort' here even if config.h says to use it. */ 44#ifdef abort 45#undef abort 46#endif 47 48#include "libgcc2.h" 49 50#if defined (L_negdi2) || defined (L_divdi3) || defined (L_moddi3) --- 1063 unchanged lines hidden (view full) --- 1114 if (DF_SIZE < DI_SIZE 1115 && DF_SIZE > (DI_SIZE - DF_SIZE + SF_SIZE)) 1116 { 1117#define REP_BIT ((UDWtype) 1 << (DI_SIZE - DF_SIZE)) 1118 if (! (- ((DWtype) 1 << DF_SIZE) < u 1119 && u < ((DWtype) 1 << DF_SIZE))) 1120 { 1121 if ((UDWtype) u & (REP_BIT - 1)) | 41/* Don't use `fancy_abort' here even if config.h says to use it. */ 42#ifdef abort 43#undef abort 44#endif 45 46#include "libgcc2.h" 47 48#if defined (L_negdi2) || defined (L_divdi3) || defined (L_moddi3) --- 1063 unchanged lines hidden (view full) --- 1112 if (DF_SIZE < DI_SIZE 1113 && DF_SIZE > (DI_SIZE - DF_SIZE + SF_SIZE)) 1114 { 1115#define REP_BIT ((UDWtype) 1 << (DI_SIZE - DF_SIZE)) 1116 if (! (- ((DWtype) 1 << DF_SIZE) < u 1117 && u < ((DWtype) 1 << DF_SIZE))) 1118 { 1119 if ((UDWtype) u & (REP_BIT - 1)) |
1122 u |= REP_BIT; | 1120 { 1121 u &= ~ (REP_BIT - 1); 1122 u |= REP_BIT; 1123 } |
1123 } 1124 } 1125 f = (Wtype) (u >> WORD_SIZE); 1126 f *= HIGH_HALFWORD_COEFF; 1127 f *= HIGH_HALFWORD_COEFF; 1128 f += (UWtype) (u & (HIGH_WORD_COEFF - 1)); 1129 1130 return (SFtype) f; --- 923 unchanged lines hidden --- | 1124 } 1125 } 1126 f = (Wtype) (u >> WORD_SIZE); 1127 f *= HIGH_HALFWORD_COEFF; 1128 f *= HIGH_HALFWORD_COEFF; 1129 f += (UWtype) (u & (HIGH_WORD_COEFF - 1)); 1130 1131 return (SFtype) f; --- 923 unchanged lines hidden --- |