URL
https://opencores.org/ocsvn/or1k/or1k/trunk
Go to most recent revision |
Only display areas with differences |
Details |
Blame |
View Log
Rev 1007 |
Rev 1765 |
|
|
union u
|
union u
|
{
|
{
|
struct
|
struct
|
{
|
{
|
short int msw;
|
short int msw;
|
unsigned short lsw;
|
unsigned short lsw;
|
} w;
|
} w;
|
long l;
|
long l;
|
};
|
};
|
|
|
union us
|
union us
|
{
|
{
|
struct
|
struct
|
{
|
{
|
short int msw;
|
short int msw;
|
unsigned short lsw;
|
unsigned short lsw;
|
} w;
|
} w;
|
long l;
|
long l;
|
};
|
};
|
|
|
int
|
int
|
__cmpsi2(long arga,
|
__cmpsi2(long arga,
|
short int msw_b, unsigned short int lsw_b)
|
short int msw_b, unsigned short int lsw_b)
|
{
|
{
|
union u u;
|
union u u;
|
u.l = arga;
|
u.l = arga;
|
|
|
if (u.w.msw != msw_b)
|
if (u.w.msw != msw_b)
|
{
|
{
|
if (u.w.msw < msw_b) return 0;
|
if (u.w.msw < msw_b) return 0;
|
return 2;
|
return 2;
|
}
|
}
|
if (u.w.lsw != lsw_b)
|
if (u.w.lsw != lsw_b)
|
{
|
{
|
if (u.w.lsw < lsw_b) return 0;
|
if (u.w.lsw < lsw_b) return 0;
|
return 2;
|
return 2;
|
}
|
}
|
return 1;
|
return 1;
|
}
|
}
|
|
|
|
|
int
|
int
|
__ucmpsi2(unsigned long arga,
|
__ucmpsi2(unsigned long arga,
|
unsigned short int msw_b, unsigned short int lsw_b)
|
unsigned short int msw_b, unsigned short int lsw_b)
|
{
|
{
|
union us u;
|
union us u;
|
u.l = arga;
|
u.l = arga;
|
|
|
if (u.w.msw != msw_b)
|
if (u.w.msw != msw_b)
|
{
|
{
|
if (u.w.msw < msw_b) return 0;
|
if (u.w.msw < msw_b) return 0;
|
return 2;
|
return 2;
|
}
|
}
|
if (u.w.lsw != lsw_b)
|
if (u.w.lsw != lsw_b)
|
{
|
{
|
if (u.w.lsw < lsw_b) return 0;
|
if (u.w.lsw < lsw_b) return 0;
|
return 2;
|
return 2;
|
}
|
}
|
return 1;
|
return 1;
|
}
|
}
|
|
|
|
|
union pu
|
union pu
|
{
|
{
|
struct {
|
struct {
|
char ignore;
|
char ignore;
|
signed char msb;
|
signed char msb;
|
unsigned short lsw;
|
unsigned short lsw;
|
} w;
|
} w;
|
long l;
|
long l;
|
};
|
};
|
|
|
union pun
|
union pun
|
{
|
{
|
struct {
|
struct {
|
char ignore;
|
char ignore;
|
unsigned char msb;
|
unsigned char msb;
|
unsigned short lsw;
|
unsigned short lsw;
|
} w;
|
} w;
|
long l;
|
long l;
|
};
|
};
|
|
|
|
|
int
|
int
|
__cmppsi2(long arga, long argb)
|
__cmppsi2(long arga, long argb)
|
{
|
{
|
union pu a;
|
union pu a;
|
union pu b;
|
union pu b;
|
a.l = arga;
|
a.l = arga;
|
b.l = argb;
|
b.l = argb;
|
|
|
if (a.w.msb != b.w.msb)
|
if (a.w.msb != b.w.msb)
|
{
|
{
|
if (a.w.msb < b.w.msb) return 0;
|
if (a.w.msb < b.w.msb) return 0;
|
return 2;
|
return 2;
|
}
|
}
|
if (a.w.lsw != b.w.lsw)
|
if (a.w.lsw != b.w.lsw)
|
{
|
{
|
if (a.w.lsw < b.w.lsw) return 0;
|
if (a.w.lsw < b.w.lsw) return 0;
|
return 2;
|
return 2;
|
}
|
}
|
return 1;
|
return 1;
|
}
|
}
|
|
|
|
|
int
|
int
|
__ucmppsi2(long arga, long argb)
|
__ucmppsi2(long arga, long argb)
|
{
|
{
|
union pun a;
|
union pun a;
|
union pun b;
|
union pun b;
|
a.l = arga;
|
a.l = arga;
|
b.l = argb;
|
b.l = argb;
|
|
|
if (a.w.msb != b.w.msb)
|
if (a.w.msb != b.w.msb)
|
{
|
{
|
if (a.w.msb < b.w.msb) return 0;
|
if (a.w.msb < b.w.msb) return 0;
|
return 2;
|
return 2;
|
}
|
}
|
if (a.w.lsw != b.w.lsw)
|
if (a.w.lsw != b.w.lsw)
|
{
|
{
|
if (a.w.lsw < b.w.lsw) return 0;
|
if (a.w.lsw < b.w.lsw) return 0;
|
return 2;
|
return 2;
|
}
|
}
|
return 1;
|
return 1;
|
}
|
}
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.