2000-09-26 Dave Brolley <brolley@redhat.com>
* cgen-utils.c (RORQI): New function. (ROLQI): New function. (RORHI): New function. (ROLHI): New function.
This commit is contained in:
parent
c78b412857
commit
6d4c43bfc6
2 changed files with 75 additions and 0 deletions
|
@ -321,6 +321,74 @@ CONVDISI (val)
|
|||
|
||||
#endif /* DI_FN_SUPPORT */
|
||||
|
||||
QI
|
||||
RORQI (val, shift)
|
||||
QI val;
|
||||
int shift;
|
||||
{
|
||||
if (shift != 0)
|
||||
{
|
||||
int remain = 8 - shift;
|
||||
int mask = (1 << shift) - 1;
|
||||
QI result = (val & mask) << remain;
|
||||
mask = (1 << remain) - 1;
|
||||
result |= (val >> shift) & mask;
|
||||
return result;
|
||||
}
|
||||
return val;
|
||||
}
|
||||
|
||||
QI
|
||||
ROLQI (val, shift)
|
||||
QI val;
|
||||
int shift;
|
||||
{
|
||||
if (shift != 0)
|
||||
{
|
||||
int remain = 8 - shift;
|
||||
int mask = (1 << remain) - 1;
|
||||
QI result = (val & mask) << shift;
|
||||
mask = (1 << shift) - 1;
|
||||
result |= (val >> remain) & mask;
|
||||
return result;
|
||||
}
|
||||
return val;
|
||||
}
|
||||
|
||||
HI
|
||||
RORHI (val, shift)
|
||||
HI val;
|
||||
int shift;
|
||||
{
|
||||
if (shift != 0)
|
||||
{
|
||||
int remain = 16 - shift;
|
||||
int mask = (1 << shift) - 1;
|
||||
HI result = (val & mask) << remain;
|
||||
mask = (1 << remain) - 1;
|
||||
result |= (val >> shift) & mask;
|
||||
return result;
|
||||
}
|
||||
return val;
|
||||
}
|
||||
|
||||
HI
|
||||
ROLHI (val, shift)
|
||||
HI val;
|
||||
int shift;
|
||||
{
|
||||
if (shift != 0)
|
||||
{
|
||||
int remain = 16 - shift;
|
||||
int mask = (1 << remain) - 1;
|
||||
HI result = (val & mask) << shift;
|
||||
mask = (1 << shift) - 1;
|
||||
result |= (val >> remain) & mask;
|
||||
return result;
|
||||
}
|
||||
return val;
|
||||
}
|
||||
|
||||
SI
|
||||
RORSI (val, shift)
|
||||
SI val;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue