[libc-commits] [libc] 122da69 - [libc] Fix build when __FE_DENORM is defined

Alex Brachet via libc-commits libc-commits at lists.llvm.org
Wed Jun 8 09:22:30 PDT 2022


Author: Alex Brachet
Date: 2022-06-08T16:21:53Z
New Revision: 122da690b39a67cd6e6bce4b9ad3ac1470cc1ed5

URL: https://github.com/llvm/llvm-project/commit/122da690b39a67cd6e6bce4b9ad3ac1470cc1ed5
DIFF: https://github.com/llvm/llvm-project/commit/122da690b39a67cd6e6bce4b9ad3ac1470cc1ed5.diff

LOG: [libc] Fix build when __FE_DENORM is defined

Differential revision: https://reviews.llvm.org/D127222

Added: 
    

Modified: 
    libc/src/__support/FPUtil/x86_64/FEnvImpl.h

Removed: 
    


################################################################################
diff  --git a/libc/src/__support/FPUtil/x86_64/FEnvImpl.h b/libc/src/__support/FPUtil/x86_64/FEnvImpl.h
index 846996ec93afd..6bac3e9e6a0f1 100644
--- a/libc/src/__support/FPUtil/x86_64/FEnvImpl.h
+++ b/libc/src/__support/FPUtil/x86_64/FEnvImpl.h
@@ -73,7 +73,7 @@ static inline uint16_t get_status_value_for_except(int excepts) {
   // bit flags in the control registers.
   return (excepts & FE_INVALID ? ExceptionFlags::INVALID : 0) |
 #ifdef __FE_DENORM
-         (excepts & __FE_DENORM ? ExceptionFlags::Denormal : 0) |
+         (excepts & __FE_DENORM ? ExceptionFlags::DENORMAL : 0) |
 #endif // __FE_DENORM
          (excepts & FE_DIVBYZERO ? ExceptionFlags::DIV_BY_ZERO : 0) |
          (excepts & FE_OVERFLOW ? ExceptionFlags::OVERFLOW : 0) |
@@ -84,7 +84,7 @@ static inline uint16_t get_status_value_for_except(int excepts) {
 static inline int exception_status_to_macro(uint16_t status) {
   return (status & ExceptionFlags::INVALID ? FE_INVALID : 0) |
 #ifdef __FE_DENORM
-         (status & ExceptionFlags::Denormal ? __FE_DENORM : 0) |
+         (status & ExceptionFlags::DENORMAL ? __FE_DENORM : 0) |
 #endif // __FE_DENORM
          (status & ExceptionFlags::DIV_BY_ZERO ? FE_DIVBYZERO : 0) |
          (status & ExceptionFlags::OVERFLOW ? FE_OVERFLOW : 0) |
@@ -195,7 +195,7 @@ static inline int disable_except(int excepts) {
 }
 
 static inline int get_except() {
-  uint16_t mxcsr = internal::get_mxcsr();
+  uint16_t mxcsr = static_cast<uint16_t>(internal::get_mxcsr());
   uint16_t enabled_excepts = ~(mxcsr >> 7) & 0x3F;
   return internal::exception_status_to_macro(enabled_excepts);
 }
@@ -273,8 +273,8 @@ static inline int raise_except(int excepts) {
   if (status_value & internal::ExceptionFlags::INEXACT)
     raise_helper(internal::ExceptionFlags::INEXACT);
 #ifdef __FE_DENORM
-  if (statusValue & internal::ExceptionFlags::Denormal) {
-    raiseHelper(internal::ExceptionFlags::Denormal);
+  if (status_value & internal::ExceptionFlags::DENORMAL) {
+    raise_helper(internal::ExceptionFlags::DENORMAL);
   }
 #endif // __FE_DENORM
 


        


More information about the libc-commits mailing list