Home | History | Annotate | Line # | Download | only in mips
      1 /* libgcc routines for MIPS
      2    Copyright (C) 2013-2024 Free Software Foundation, Inc.
      3    DMULT/DDIV replacement support by Juergen Urban, JuergenUrban (at) gmx.de.
      4 
      5 This file is part of GCC.
      6 
      7 GCC is free software; you can redistribute it and/or modify it under
      8 the terms of the GNU General Public License as published by the Free
      9 Software Foundation; either version 3, or (at your option) any later
     10 version.
     11 
     12 GCC is distributed in the hope that it will be useful, but WITHOUT ANY
     13 WARRANTY; without even the implied warranty of MERCHANTABILITY or
     14 FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
     15 for more details.
     16 
     17 Under Section 7 of GPL version 3, you are granted additional
     18 permissions described in the GCC Runtime Library Exception, version
     19 3.1, as published by the Free Software Foundation.
     20 
     21 You should have received a copy of the GNU General Public License and
     22 a copy of the GCC Runtime Library Exception along with this program;
     23 see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
     24 <http://www.gnu.org/licenses/>.  */
     25 
     26 #if defined(__mips64) && defined(_MIPS_ARCH_R5900)
     27 
     28 /* Build DI version of libgcc functions. */
     29 #define LIBGCC2_UNITS_PER_WORD 4
     30 
     31 /* The following function is needed when !ISA_HAS_DMULT. */
     32 #define L_muldi3
     33 
     34 /* The following functions are needed when !ISA_HAS_DDIV. */
     35 #define L_divdi3
     36 #define L_moddi3
     37 #define L_udivdi3
     38 #define L_umoddi3
     39 #define L_udivmoddi4
     40 
     41 /* Use generic definition of functions. */
     42 #include "libgcc2.c"
     43 
     44 #endif
     45