EasyManua.ls Logo

Renesas SuperH SH-4A - Page 384

Renesas SuperH SH-4A
472 pages
Print Icon
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
Rev. 1.50, 10/04, page 364 of 448
void invalid(int n)
{
set_V();
if((FPSCR & ENABLE_V) == 0 qnan(n);
else fpu_exception_trap();
}
void dz(int n,sign)
{
set_Z();
if((FPSCR & ENABLE_Z) == 0 inf(n,sign);
else fpu_exception_trap();
}
void zero(int n,sign)
{
if(sign == 0) FR_HEX [n] = 0x00000000;
else FR_HEX [n] = 0x80000000;
if (FPSCR_PR==1) FR_HEX [n+1] = 0x00000000;
}
void inf(int n,sign) {
if (FPSCR_PR==0) {
if(sign == 0) FR_HEX [n] = 0x7f800000;
else FR_HEX [n] = 0xff800000;
} else {
if(sign == 0) FR_HEX [n] = 0x7ff00000;
else FR_HEX [n] = 0xfff00000;
FR_HEX [n+1] = 0x00000000;
}
}
void qnan(int n)
{
if (FPSCR_PR==0) FR[n] = 0x7fbfffff;
else { FR[n] = 0x7ff7ffff;
FR[n+1] = 0xffffffff;
}
}

Table of Contents

Related product manuals