Changeset 5a6a42f in mainline for boot


Ignore:
Timestamp:
2012-04-07T12:34:19Z (14 years ago)
Author:
Martin Decky <martin@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
956a22c
Parents:
df955955
Message:

unify softint cstyle
add udivmodsi3

Location:
boot/genarch
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • boot/genarch/include/division.h

    rdf955955 r5a6a42f  
    3333#define BOOT_DIVISION_H_
    3434
    35 /* 32bit integer division */
    3635extern int __divsi3(int, int);
    37 
    38 /* 64bit integer division */
    3936extern long long __divdi3(long long, long long);
    4037
    41 /* 32bit unsigned integer division */
    4238extern unsigned int __udivsi3(unsigned int, unsigned int);
    43 
    44 /* 64bit unsigned integer division */
    4539extern unsigned long long __udivdi3(unsigned long long, unsigned long long);
    4640
    47 /* 32bit remainder of the signed division */
    4841extern int __modsi3(int, int);
    49 
    50 /* 64bit remainder of the signed division */
    5142extern long long __moddi3(long long, long long);
    5243
    53 /* 32bit remainder of the unsigned division */
    5444extern unsigned int __umodsi3(unsigned int, unsigned int);
    55 
    56 /* 64bit remainder of the unsigned division */
    5745extern unsigned long long __umoddi3(unsigned long long, unsigned long long);
    5846
     47extern unsigned int __udivmodsi3(unsigned int, unsigned int, unsigned int *);
    5948extern unsigned long long __udivmoddi3(unsigned long long, unsigned long long,
    6049    unsigned long long *);
  • boot/genarch/src/division.c

    rdf955955 r5a6a42f  
    7373{
    7474        unsigned long long result;
    75         int steps = sizeof(unsigned long long) * 8; 
     75        int steps = sizeof(unsigned long long) * 8;
    7676       
    7777        *remainder = 0;
     
    104104
    105105/* 32bit integer division */
    106 int __divsi3(int a, int b) 
     106int __divsi3(int a, int b)
    107107{
    108108        unsigned int rem;
     
    116116
    117117/* 64bit integer division */
    118 long long __divdi3(long long a, long long b) 
     118long long __divdi3(long long a, long long b)
    119119{
    120120        unsigned long long rem;
     
    155155
    156156/* 64bit remainder of the signed division */
    157 long long __moddi3(long long a,long long b)
     157long long __moddi3(long long a, long long b)
    158158{
    159159        unsigned long long rem;
     
    183183}
    184184
     185unsigned int __udivmodsi3(unsigned int a, unsigned int b,
     186    unsigned int *c)
     187{
     188        return divandmod32(a, b, c);
     189}
     190
    185191unsigned long long __udivmoddi3(unsigned long long a, unsigned long long b,
    186192    unsigned long long *c)
Note: See TracChangeset for help on using the changeset viewer.