Merge from master

This commit is contained in:
Wilson Snyder 2018-07-22 11:53:58 -04:00
commit 0ef3baa87d
3 changed files with 8 additions and 14 deletions

View File

@ -632,10 +632,6 @@ WARN_LOGFILE =
INPUT = doxygen-mainpage \ INPUT = doxygen-mainpage \
include \ include \
src \ src \
test_c \
test_regress \
test_sc \
test_v
# This tag can be used to specify the character encoding of the source files # This tag can be used to specify the character encoding of the source files
# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is # that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is

View File

@ -327,7 +327,7 @@ public: // But internals only - called from VerilatedModule's
class Verilated { class Verilated {
// MEMBERS // MEMBERS
// Slow path variables // Slow path variables
static VerilatedMutex m_mutex; ///< Mutex for all static members, when VL_THREADED static VerilatedMutex m_mutex; ///< Mutex for s_s/s_ns members, when VL_THREADED
static VerilatedVoidCb s_flushCb; ///< Flush callback function static VerilatedVoidCb s_flushCb; ///< Flush callback function

View File

@ -358,21 +358,19 @@ typedef unsigned long long vluint64_t; ///< 64-bit unsigned type
//========================================================================= //=========================================================================
// Performance counters // Performance counters
#if VL_THREADED
/// The vluint64_t argument is loaded with a high-performance counter for profiling /// The vluint64_t argument is loaded with a high-performance counter for profiling
/// or 0x0 if not implemeted on this platform /// or 0x0 if not implemeted on this platform
# if defined(__i386__) || defined(__x86_64__) #if defined(__i386__) || defined(__x86_64__)
# define VL_RDTSC(val) { \ # define VL_RDTSC(val) { \
vluint32_t hi, lo; \ vluint32_t hi, lo; \
asm volatile("rdtsc" : "=a" (lo), "=d" (hi)); \ asm volatile("rdtsc" : "=a" (lo), "=d" (hi)); \
(val) = ((vluint64_t)lo) | (((vluint64_t)hi)<<32); \ (val) = ((vluint64_t)lo) | (((vluint64_t)hi)<<32); \
} }
# elif defined(__aarch64__) #elif defined(__aarch64__)
# define VL_RDTSC(val) asm volatile("mrs %[rt],PMCCNTR_EL0" : [rt] "=r" (val)); # define VL_RDTSC(val) asm volatile("mrs %[rt],PMCCNTR_EL0" : [rt] "=r" (val));
# else #else
// We just silently ignore unknown OSes, as only leads to missing statistics // We just silently ignore unknown OSes, as only leads to missing statistics
# define VL_RDTSC(val) (val) = 0; # define VL_RDTSC(val) (val) = 0;
# endif
#endif #endif
//========================================================================= //=========================================================================