From 4d4b97274e111c15b167fcfc95511c9c4697a436 Mon Sep 17 00:00:00 2001
From: Ezekiel Dohmen <ezekiel.dohmen@ligo.org>
Date: Tue, 5 Apr 2022 14:09:15 -0700
Subject: [PATCH] Removing inlineMath.c file in favor of defining all functions
 inline in the header

---
 src/epics/util/Makefile.kernel            |  1 -
 src/epics/util/Userspace_CMakeLists.cmake |  1 -
 src/fe/inlineMath.c                       | 14 --------------
 src/include/inlineMath.h                  | 13 +++++++++++--
 4 files changed, 11 insertions(+), 18 deletions(-)
 delete mode 100644 src/fe/inlineMath.c

diff --git a/src/epics/util/Makefile.kernel b/src/epics/util/Makefile.kernel
index 62ed34c58..121633eac 100644
--- a/src/epics/util/Makefile.kernel
+++ b/src/epics/util/Makefile.kernel
@@ -31,7 +31,6 @@ endif
 # Add all kernel common object files
 COMMON_OBJ_FILES := $(MODEL_NAME)_core.o
 COMMON_OBJ_FILES += src/drv/crc.o
-COMMON_OBJ_FILES += src/fe/inlineMath.o
 COMMON_OBJ_FILES += src/fe/moduleLoad.o
 COMMON_OBJ_FILES += src/fe/moduleLoadCommon.o
 COMMON_OBJ_FILES += src/fe/print_io_info.o
diff --git a/src/epics/util/Userspace_CMakeLists.cmake b/src/epics/util/Userspace_CMakeLists.cmake
index 21cccbd7b..dadbe6472 100644
--- a/src/epics/util/Userspace_CMakeLists.cmake
+++ b/src/epics/util/Userspace_CMakeLists.cmake
@@ -27,7 +27,6 @@ list(APPEND COMMON_SRC_LIST "${CMAKE_CURRENT_SOURCE_DIR}/${MODEL_NAME}_core.c"
                      "${CMAKE_CURRENT_SOURCE_DIR}/src/fe/print_io_info.c"
                      "${CMAKE_CURRENT_SOURCE_DIR}/src/include/controller.c"
                      "${CMAKE_CURRENT_SOURCE_DIR}/src/include/controllerko.c"
-                     "${CMAKE_CURRENT_SOURCE_DIR}/src/fe/inlineMath.c"
                      "${CMAKE_CURRENT_SOURCE_DIR}/src/drv/crc.c"
                      "${CMAKE_CURRENT_SOURCE_DIR}/src/include/drv/fm10Gen.c"
                      "${CMAKE_CURRENT_SOURCE_DIR}/src/include/drv/epicsXfer.c"
diff --git a/src/fe/inlineMath.c b/src/fe/inlineMath.c
deleted file mode 100644
index a8fce6627..000000000
--- a/src/fe/inlineMath.c
+++ /dev/null
@@ -1,14 +0,0 @@
-//#define LIGO_INLINE
-#include "inlineMath.h"
-
-/* Set FZ and DAZ bits, disabling underflows and denorms
- * This fixes long execution times caused by 0.0 inputs to filter modules. 
- * See the inlineMath.h header file for more information on the bits we are
- * setting 
- * */
-void
-fz_daz( void )
-{
-    write_mxcsr( read_mxcsr( ) | 1 | 1 << 15 );
-}
-
diff --git a/src/include/inlineMath.h b/src/include/inlineMath.h
index 247dc6a8d..08b6358e5 100644
--- a/src/include/inlineMath.h
+++ b/src/include/inlineMath.h
@@ -206,8 +206,17 @@ write_mxcsr( unsigned long long val )
     asm( "ldmxcsr %0" ::"m"( val ) );
 }
 
-/* Start function prototypes for inlineMath.c */
-void fz_daz( void );
+/* Set FZ and DAZ bits, disabling underflows and denorms
+ * This fixes long execution times caused by 0.0 inputs to filter modules.
+ * See the inlineMath.h header file for more information on the bits we are
+ * setting
+ * */
+LIGO_INLINE void
+fz_daz( void )
+{
+    write_mxcsr( read_mxcsr( ) | 1 | 1 << 15 );
+}
+
 
 #ifdef __cplusplus
 }
-- 
GitLab