- Timestamp:
- 2012-04-07T12:34:19Z (14 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 956a22c
- Parents:
- df955955
- Location:
- boot/genarch
- Files:
-
- 2 edited
-
include/division.h (modified) (1 diff)
-
src/division.c (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
-
boot/genarch/include/division.h
rdf955955 r5a6a42f 33 33 #define BOOT_DIVISION_H_ 34 34 35 /* 32bit integer division */36 35 extern int __divsi3(int, int); 37 38 /* 64bit integer division */39 36 extern long long __divdi3(long long, long long); 40 37 41 /* 32bit unsigned integer division */42 38 extern unsigned int __udivsi3(unsigned int, unsigned int); 43 44 /* 64bit unsigned integer division */45 39 extern unsigned long long __udivdi3(unsigned long long, unsigned long long); 46 40 47 /* 32bit remainder of the signed division */48 41 extern int __modsi3(int, int); 49 50 /* 64bit remainder of the signed division */51 42 extern long long __moddi3(long long, long long); 52 43 53 /* 32bit remainder of the unsigned division */54 44 extern unsigned int __umodsi3(unsigned int, unsigned int); 55 56 /* 64bit remainder of the unsigned division */57 45 extern unsigned long long __umoddi3(unsigned long long, unsigned long long); 58 46 47 extern unsigned int __udivmodsi3(unsigned int, unsigned int, unsigned int *); 59 48 extern unsigned long long __udivmoddi3(unsigned long long, unsigned long long, 60 49 unsigned long long *); -
boot/genarch/src/division.c
rdf955955 r5a6a42f 73 73 { 74 74 unsigned long long result; 75 int steps = sizeof(unsigned long long) * 8; 75 int steps = sizeof(unsigned long long) * 8; 76 76 77 77 *remainder = 0; … … 104 104 105 105 /* 32bit integer division */ 106 int __divsi3(int a, int b) 106 int __divsi3(int a, int b) 107 107 { 108 108 unsigned int rem; … … 116 116 117 117 /* 64bit integer division */ 118 long long __divdi3(long long a, long long b) 118 long long __divdi3(long long a, long long b) 119 119 { 120 120 unsigned long long rem; … … 155 155 156 156 /* 64bit remainder of the signed division */ 157 long long __moddi3(long long a, longlong b)157 long long __moddi3(long long a, long long b) 158 158 { 159 159 unsigned long long rem; … … 183 183 } 184 184 185 unsigned int __udivmodsi3(unsigned int a, unsigned int b, 186 unsigned int *c) 187 { 188 return divandmod32(a, b, c); 189 } 190 185 191 unsigned long long __udivmoddi3(unsigned long long a, unsigned long long b, 186 192 unsigned long long *c)
Note:
See TracChangeset
for help on using the changeset viewer.
