]> git.ipfire.org Git - thirdparty/gcc.git/blame - libgcc/config/nios2/lib2-mul.c
Update copyright years.
[thirdparty/gcc.git] / libgcc / config / nios2 / lib2-mul.c
CommitLineData
83ffe9cd 1/* Copyright (C) 2012-2023 Free Software Foundation, Inc.
e430824f
CLT
2 Contributed by Altera and Mentor Graphics, Inc.
3
4This file is free software; you can redistribute it and/or modify it
5under the terms of the GNU General Public License as published by the
6Free Software Foundation; either version 3, or (at your option) any
7later version.
8
9This file is distributed in the hope that it will be useful, but
10WITHOUT ANY WARRANTY; without even the implied warranty of
11MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12General Public License for more details.
13
14Under Section 7 of GPL version 3, you are granted additional
15permissions described in the GCC Runtime Library Exception, version
163.1, as published by the Free Software Foundation.
17
18You should have received a copy of the GNU General Public License and
19a copy of the GCC Runtime Library Exception along with this program;
20see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
21<http://www.gnu.org/licenses/>. */
22
23#include "lib2-nios2.h"
24
25/* 32-bit SI multiply for Nios II. */
26
27SItype
28__mulsi3 (SItype a, SItype b)
29{
30 SItype res = 0;
31 USItype cnt = a;
32
33 while (cnt)
34 {
35 if (cnt & 1)
36 res += b;
37 b <<= 1;
38 cnt >>= 1;
39 }
40
41 return res;
42}