summaryrefslogtreecommitdiff
path: root/src/systemc/ext
diff options
context:
space:
mode:
Diffstat (limited to 'src/systemc/ext')
-rw-r--r--src/systemc/ext/dt/bit/sc_proxy.hh2
-rw-r--r--src/systemc/ext/dt/fx/sc_fxdefs.hh6
-rw-r--r--src/systemc/ext/dt/fx/scfx_utils.hh8
3 files changed, 11 insertions, 5 deletions
diff --git a/src/systemc/ext/dt/bit/sc_proxy.hh b/src/systemc/ext/dt/bit/sc_proxy.hh
index cf7bcbfc9..12e10725a 100644
--- a/src/systemc/ext/dt/bit/sc_proxy.hh
+++ b/src/systemc/ext/dt/bit/sc_proxy.hh
@@ -816,7 +816,7 @@ sc_proxy<X>::assign_(int a)
return x;
}
-#if defined(SC_LONG_64)
+#if SC_LONG_64
template <class X>
inline X &
sc_proxy<X>::assign_(unsigned long a)
diff --git a/src/systemc/ext/dt/fx/sc_fxdefs.hh b/src/systemc/ext/dt/fx/sc_fxdefs.hh
index 8acfabfa5..c72a45afc 100644
--- a/src/systemc/ext/dt/fx/sc_fxdefs.hh
+++ b/src/systemc/ext/dt/fx/sc_fxdefs.hh
@@ -50,6 +50,12 @@
#include "../../utils/sc_report_handler.hh"
#include "../int/sc_nbutils.hh"
+#if ULONG_MAX > 0xffffffffUL
+# define SC_LONG_64 1
+#else
+# define SC_LONG_64 0
+#endif
+
namespace sc_dt
{
diff --git a/src/systemc/ext/dt/fx/scfx_utils.hh b/src/systemc/ext/dt/fx/scfx_utils.hh
index 37c57844c..ec186c68f 100644
--- a/src/systemc/ext/dt/fx/scfx_utils.hh
+++ b/src/systemc/ext/dt/fx/scfx_utils.hh
@@ -67,9 +67,9 @@ inline int
scfx_find_msb(unsigned long x)
{
int i = 0;
-# if defined(SC_LONG_64)
+# if SC_LONG_64
MSB_STATEMENT(32);
-# endif // defined(SC_LONG_64)
+# endif // SC_LONG_64
MSB_STATEMENT(16);
MSB_STATEMENT(8);
MSB_STATEMENT(4);
@@ -86,12 +86,12 @@ inline int
scfx_find_lsb(unsigned long x)
{
int i;
-# if defined(SC_LONG_64)
+# if SC_LONG_64
i = 63;
LSB_STATEMENT(32);
# else
i = 31;
-# endif // defined(SC_LONG_64)
+# endif // SC_LONG_64
LSB_STATEMENT(16);
LSB_STATEMENT(8);
LSB_STATEMENT(4);