|
|
1.1 root 1: /* Copyright (C) 1994 Free Software Foundation, Inc.
2:
3: This file is free software; you can redistribute it and/or modify it
4: under the terms of the GNU General Public License as published by the
5: Free Software Foundation; either version 2, or (at your option) any
6: later version.
7:
8: In addition to the permissions in the GNU General Public License, the
9: Free Software Foundation gives you unlimited permission to link the
10: compiled version of this file with other programs, and to distribute
11: those programs without any restriction coming from the use of this
12: file. (The General Public License restrictions do apply in other
13: respects; for example, they cover modification of the file, and
14: distribution when not linked into another program.)
15:
16: This file is distributed in the hope that it will be useful, but
17: WITHOUT ANY WARRANTY; without even the implied warranty of
18: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19: General Public License for more details.
20:
21: You should have received a copy of the GNU General Public License
22: along with this program; see the file COPYING. If not, write to
23: the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
24:
25: /* As a special exception, if you link this library with other files,
26: some of which are compiled with GCC, to produce an executable,
27: this library does not by itself cause the resulting executable
28: to be covered by the GNU General Public License.
29: This exception does not however invalidate any other reasons why
30: the executable file might be covered by the GNU General Public License. */
31:
32:
33: /* libgcc1 routines for the Hitachi SH cpu.
34: Contributed by Steve Chamberlain.
35: [email protected] */
36:
37:
38:
39:
40:
41:
42: long
43: __lshrsi3 (unsigned a, int b)
44: {
45: switch (b)
46: {
47: default : return 0;
48: case 0: return a >> 0;
49: case 1: return a >> 1;
50: case 2: return a >> 2;
51: case 3: return a >> 3;
52: case 4: return a >> 4;
53: case 5: return a >> 5;
54: case 6: return a >> 6;
55: case 7: return a >> 7;
56: case 8: return a >> 8;
57: case 9: return a >> 9;
58: case 10: return a >> 10;
59: case 11: return a >> 11;
60: case 12: return a >> 12;
61: case 13: return a >> 13;
62: case 14: return a >> 14;
63: case 15: return a >> 15;
64: case 16: return a >> 16;
65: case 17: return a >> 17;
66: case 18: return a >> 18;
67: case 19: return a >> 19;
68: case 20: return a >> 20;
69: case 21: return a >> 21;
70: case 22: return a >> 22;
71: case 23: return a >> 23;
72: case 24: return a >> 24;
73: case 25: return a >> 25;
74: case 26: return a >> 26;
75: case 27: return a >> 27;
76: case 28: return a >> 28;
77: case 29: return a >> 29;
78: case 30: return a >> 30;
79: case 31: return a >> 31;
80: }
81: }
82:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.