mirror of
https://github.com/YosysHQ/yosys
synced 2025-04-07 09:55:20 +00:00
Remove use of <fpu_control.h> in minisat
This commit is contained in:
parent
106e44f406
commit
71cbe98a09
43
libs/minisat/00_PATCH_no_fpu_control.patch
Normal file
43
libs/minisat/00_PATCH_no_fpu_control.patch
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
--- System.cc
|
||||||
|
+++ System.cc
|
||||||
|
@@ -97,17 +97,6 @@ double Minisat::memUsedPeak(bool) { return 0; }
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
-void Minisat::setX86FPUPrecision()
|
||||||
|
-{
|
||||||
|
-#if defined(__linux__) && defined(_FPU_EXTENDED) && defined(_FPU_DOUBLE) && defined(_FPU_GETCW)
|
||||||
|
- // Only correct FPU precision on Linux architectures that needs and supports it:
|
||||||
|
- fpu_control_t oldcw, newcw;
|
||||||
|
- _FPU_GETCW(oldcw); newcw = (oldcw & ~_FPU_EXTENDED) | _FPU_DOUBLE; _FPU_SETCW(newcw);
|
||||||
|
- printf("WARNING: for repeatability, setting FPU to use double precision\n");
|
||||||
|
-#endif
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-
|
||||||
|
#if !defined(_MSC_VER) && !defined(__MINGW32__)
|
||||||
|
void Minisat::limitMemory(uint64_t max_mem_mb)
|
||||||
|
{
|
||||||
|
--- System.h
|
||||||
|
+++ System.h
|
||||||
|
@@ -21,10 +21,6 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA
|
||||||
|
#ifndef Minisat_System_h
|
||||||
|
#define Minisat_System_h
|
||||||
|
|
||||||
|
-#if defined(__linux__)
|
||||||
|
-#include <fpu_control.h>
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
#include "IntTypes.h"
|
||||||
|
|
||||||
|
//-------------------------------------------------------------------------------------------------
|
||||||
|
@@ -36,9 +32,6 @@ static inline double cpuTime(void); // CPU-time in seconds.
|
||||||
|
extern double memUsed(); // Memory in mega bytes (returns 0 for unsupported architectures).
|
||||||
|
extern double memUsedPeak(bool strictlyPeak = false); // Peak-memory in mega bytes (returns 0 for unsupported architectures).
|
||||||
|
|
||||||
|
-extern void setX86FPUPrecision(); // Make sure double's are represented with the same precision
|
||||||
|
- // in memory and registers.
|
||||||
|
-
|
||||||
|
extern void limitMemory(uint64_t max_mem_mb); // Set a limit on total memory usage. The exact
|
||||||
|
// semantics varies depending on architecture.
|
||||||
|
|
|
@ -14,4 +14,5 @@ sed -i -e '1 i #define __STDC_FORMAT_MACROS' *.cc
|
||||||
|
|
||||||
patch -p0 < 00_PATCH_mkLit_default_arg.patch
|
patch -p0 < 00_PATCH_mkLit_default_arg.patch
|
||||||
patch -p0 < 00_PATCH_remove_zlib.patch
|
patch -p0 < 00_PATCH_remove_zlib.patch
|
||||||
|
patch -p0 < 00_PATCH_no_fpu_control.patch
|
||||||
|
|
||||||
|
|
|
@ -97,17 +97,6 @@ double Minisat::memUsedPeak(bool) { return 0; }
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
void Minisat::setX86FPUPrecision()
|
|
||||||
{
|
|
||||||
#if defined(__linux__) && defined(_FPU_EXTENDED) && defined(_FPU_DOUBLE) && defined(_FPU_GETCW)
|
|
||||||
// Only correct FPU precision on Linux architectures that needs and supports it:
|
|
||||||
fpu_control_t oldcw, newcw;
|
|
||||||
_FPU_GETCW(oldcw); newcw = (oldcw & ~_FPU_EXTENDED) | _FPU_DOUBLE; _FPU_SETCW(newcw);
|
|
||||||
printf("WARNING: for repeatability, setting FPU to use double precision\n");
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
#if !defined(_MSC_VER) && !defined(__MINGW32__)
|
#if !defined(_MSC_VER) && !defined(__MINGW32__)
|
||||||
void Minisat::limitMemory(uint64_t max_mem_mb)
|
void Minisat::limitMemory(uint64_t max_mem_mb)
|
||||||
{
|
{
|
||||||
|
|
|
@ -21,10 +21,6 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA
|
||||||
#ifndef Minisat_System_h
|
#ifndef Minisat_System_h
|
||||||
#define Minisat_System_h
|
#define Minisat_System_h
|
||||||
|
|
||||||
#if defined(__linux__)
|
|
||||||
#include <fpu_control.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include "IntTypes.h"
|
#include "IntTypes.h"
|
||||||
|
|
||||||
//-------------------------------------------------------------------------------------------------
|
//-------------------------------------------------------------------------------------------------
|
||||||
|
@ -36,9 +32,6 @@ static inline double cpuTime(void); // CPU-time in seconds.
|
||||||
extern double memUsed(); // Memory in mega bytes (returns 0 for unsupported architectures).
|
extern double memUsed(); // Memory in mega bytes (returns 0 for unsupported architectures).
|
||||||
extern double memUsedPeak(bool strictlyPeak = false); // Peak-memory in mega bytes (returns 0 for unsupported architectures).
|
extern double memUsedPeak(bool strictlyPeak = false); // Peak-memory in mega bytes (returns 0 for unsupported architectures).
|
||||||
|
|
||||||
extern void setX86FPUPrecision(); // Make sure double's are represented with the same precision
|
|
||||||
// in memory and registers.
|
|
||||||
|
|
||||||
extern void limitMemory(uint64_t max_mem_mb); // Set a limit on total memory usage. The exact
|
extern void limitMemory(uint64_t max_mem_mb); // Set a limit on total memory usage. The exact
|
||||||
// semantics varies depending on architecture.
|
// semantics varies depending on architecture.
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue