1 /* libgcc routines for the FR30.
2 Copyright
(C
) 1998, 1999 Free Software Foundation
, Inc.
4 This file is part of GCC.
6 GCC is free software
; you can redistribute it and/or modify it
7 under the terms of the GNU General
Public License as published by the
8 Free Software Foundation
; either version 2, or (at your option) any
11 In addition to the permissions
in the GNU General
Public License
, the
12 Free Software Foundation gives you unlimited permission to link the
13 compiled version of
this file
into combinations with other programs
,
14 and to distribute those combinations without any restriction coming
15 from the use of
this file.
(The General
Public License restrictions
16 do apply
in other respects
; for example, they cover modification of
17 the file
, and distribution when
not linked
into a combine
20 This file is distributed
in the hope that it will be useful
, but
21 WITHOUT ANY WARRANTY
; without even the implied warranty of
22 MERCHANTABILITY
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
23 General
Public License for more details.
25 You should have received a copy of the GNU General
Public License
26 along with
this program
; see the file COPYING. If not, write to
27 the Free Software Foundation
, 51 Franklin Street
, Fifth Floor
,
28 Boston
, MA
02110-1301, USA.
*/
30 .
macro FUNC_START
name
33 .
type __
\name
, @function
38 .
size __
\name
, .
- __
\name
41 .
macro DIV_BODY reg number
43 DIV_BODY
\reg
, "\number - 1"
50 ;; Perform an unsiged division of r4 / r5 and place the result in r4.
51 ;; Does not handle overflow yet...
58 #endif
/* L_udivsi3
*/
62 ;; Perform a siged division of r4 / r5 and place the result in r4.
63 ;; Does not handle overflow yet...
77 ;; Perform an unsiged division of r4 / r5 and places the remainder in r4.
78 ;; Does not handle overflow yet...
85 #endif
/* L_umodsi3
*/
89 ;; Perform a siged division of r4 / r5 and place the remainder in r4.
90 ;; Does not handle overflow yet...
100 #endif
/* L_modsi3
*/
109 #endif
/* L_negsi2
*/
112 FUNC_START one_cmplsi2
118 #endif
/* L_one_cmplsi2
*/