fplib.cc (10037:5cac77888310) fplib.cc (10104:ff709c429b7b)
1/*
2* Copyright (c) 2012-2013 ARM Limited
3* All rights reserved
4*
5* The license below extends only to copyright in the software and shall
6* not be construed as granting a license to any other intellectual
7* property including but not limited to intellectual property relating
8* to a hardware implementation of the functionality of the software

--- 2495 unchanged lines hidden (view full) ---

2504 if (exp == 255 && (uint32_t)(mnt << 9)) {
2505 result = fp32_process_NaN(op, mode, &flags);
2506 } else if (exp == 255) {
2507 result = fp32_zero(sgn);
2508 } else if (!mnt) {
2509 result = fp32_infinity(sgn);
2510 flags |= FPLIB_DZC;
2511 } else if (!((uint32_t)(op << 1) >> 22)) {
1/*
2* Copyright (c) 2012-2013 ARM Limited
3* All rights reserved
4*
5* The license below extends only to copyright in the software and shall
6* not be construed as granting a license to any other intellectual
7* property including but not limited to intellectual property relating
8* to a hardware implementation of the functionality of the software

--- 2495 unchanged lines hidden (view full) ---

2504 if (exp == 255 && (uint32_t)(mnt << 9)) {
2505 result = fp32_process_NaN(op, mode, &flags);
2506 } else if (exp == 255) {
2507 result = fp32_zero(sgn);
2508 } else if (!mnt) {
2509 result = fp32_infinity(sgn);
2510 flags |= FPLIB_DZC;
2511 } else if (!((uint32_t)(op << 1) >> 22)) {
2512 bool overflow_to_inf;
2512 bool overflow_to_inf = false;
2513 switch (FPCRRounding(fpscr)) {
2514 case FPRounding_TIEEVEN:
2515 overflow_to_inf = true;
2516 break;
2517 case FPRounding_POSINF:
2518 overflow_to_inf = !sgn;
2519 break;
2520 case FPRounding_NEGINF:

--- 44 unchanged lines hidden (view full) ---

2565 if (exp == 2047 && (uint64_t)(mnt << 12)) {
2566 result = fp64_process_NaN(op, mode, &flags);
2567 } else if (exp == 2047) {
2568 result = fp64_zero(sgn);
2569 } else if (!mnt) {
2570 result = fp64_infinity(sgn);
2571 flags |= FPLIB_DZC;
2572 } else if (!((uint64_t)(op << 1) >> 51)) {
2513 switch (FPCRRounding(fpscr)) {
2514 case FPRounding_TIEEVEN:
2515 overflow_to_inf = true;
2516 break;
2517 case FPRounding_POSINF:
2518 overflow_to_inf = !sgn;
2519 break;
2520 case FPRounding_NEGINF:

--- 44 unchanged lines hidden (view full) ---

2565 if (exp == 2047 && (uint64_t)(mnt << 12)) {
2566 result = fp64_process_NaN(op, mode, &flags);
2567 } else if (exp == 2047) {
2568 result = fp64_zero(sgn);
2569 } else if (!mnt) {
2570 result = fp64_infinity(sgn);
2571 flags |= FPLIB_DZC;
2572 } else if (!((uint64_t)(op << 1) >> 51)) {
2573 bool overflow_to_inf;
2573 bool overflow_to_inf = false;
2574 switch (FPCRRounding(fpscr)) {
2575 case FPRounding_TIEEVEN:
2576 overflow_to_inf = true;
2577 break;
2578 case FPRounding_POSINF:
2579 overflow_to_inf = !sgn;
2580 break;
2581 case FPRounding_NEGINF:

--- 505 unchanged lines hidden ---
2574 switch (FPCRRounding(fpscr)) {
2575 case FPRounding_TIEEVEN:
2576 overflow_to_inf = true;
2577 break;
2578 case FPRounding_POSINF:
2579 overflow_to_inf = !sgn;
2580 break;
2581 case FPRounding_NEGINF:

--- 505 unchanged lines hidden ---