mirror of https://github.com/YosysHQ/yosys.git
parent
7d076f071e
commit
1167538d26
|
@ -34,17 +34,12 @@
|
|||
#include <limits.h>
|
||||
#include <errno.h>
|
||||
|
||||
#if defined (__linux__) || defined(__FreeBSD__)
|
||||
#ifdef __linux__
|
||||
# include <sys/resource.h>
|
||||
# include <sys/types.h>
|
||||
# include <unistd.h>
|
||||
#endif
|
||||
|
||||
#ifdef __FreeBSD__
|
||||
# include <sys/sysctl.h>
|
||||
# include <sys/user.h>
|
||||
#endif
|
||||
|
||||
#if !defined(_WIN32) || defined(__MINGW32__)
|
||||
# include <unistd.h>
|
||||
#else
|
||||
|
@ -515,7 +510,7 @@ int main(int argc, char **argv)
|
|||
#else
|
||||
std::string meminfo;
|
||||
std::string stats_divider = ", ";
|
||||
# if defined(__linux__)
|
||||
# ifdef __linux__
|
||||
std::ifstream statm;
|
||||
statm.open(stringf("/proc/%lld/statm", (long long)getpid()));
|
||||
if (statm.is_open()) {
|
||||
|
@ -526,19 +521,6 @@ int main(int argc, char **argv)
|
|||
sz_resident * (getpagesize() / 1024.0 / 1024.0));
|
||||
stats_divider = "\n";
|
||||
}
|
||||
# elif defined(__FreeBSD__)
|
||||
pid_t pid = getpid();
|
||||
int mib[4] = {CTL_KERN, KERN_PROC, KERN_PROC_PID, (int)pid};
|
||||
struct kinfo_proc kip;
|
||||
size_t kip_len = sizeof(kip);
|
||||
if (sysctl(mib, 4, &kip, &kip_len, NULL, 0) == 0) {
|
||||
vm_size_t sz_total = kip.ki_size;
|
||||
segsz_t sz_resident = kip.ki_rssize;
|
||||
meminfo = stringf(", MEM: %.2f MB total, %.2f MB resident",
|
||||
(int)sz_total / 1024.0 / 1024.0,
|
||||
(int)sz_resident * (getpagesize() / 1024.0 / 1024.0));
|
||||
stats_divider = "\n";
|
||||
}
|
||||
# endif
|
||||
|
||||
struct rusage ru_buffer;
|
||||
|
@ -582,7 +564,7 @@ int main(int argc, char **argv)
|
|||
}
|
||||
}
|
||||
|
||||
#if defined(YOSYS_ENABLE_COVER) && (defined(__linux__) || defined(__FreeBSD__))
|
||||
#if defined(YOSYS_ENABLE_COVER) && defined(__linux__)
|
||||
if (getenv("YOSYS_COVER_DIR") || getenv("YOSYS_COVER_FILE"))
|
||||
{
|
||||
string filename;
|
||||
|
|
|
@ -25,7 +25,7 @@
|
|||
# include <sys/time.h>
|
||||
#endif
|
||||
|
||||
#if defined(__linux__) || defined(__FreeBSD__)
|
||||
#ifdef __linux__
|
||||
# include <dlfcn.h>
|
||||
#endif
|
||||
|
||||
|
@ -392,7 +392,7 @@ void log_pop()
|
|||
log_flush();
|
||||
}
|
||||
|
||||
#if (defined(__linux__) || defined(__FreeBSD__)) && defined(YOSYS_ENABLE_PLUGINS)
|
||||
#if defined(__linux__) && defined(YOSYS_ENABLE_PLUGINS)
|
||||
void log_backtrace(const char *prefix, int levels)
|
||||
{
|
||||
if (levels <= 0) return;
|
||||
|
@ -587,7 +587,7 @@ void log_wire(RTLIL::Wire *wire, std::string indent)
|
|||
// ---------------------------------------------------
|
||||
// This is the magic behind the code coverage counters
|
||||
// ---------------------------------------------------
|
||||
#if defined(YOSYS_ENABLE_COVER) && (defined(__linux__) || defined(__FreeBSD__))
|
||||
#if defined(YOSYS_ENABLE_COVER) && defined(__linux__)
|
||||
|
||||
dict<std::string, std::pair<std::string, int>> extra_coverage_data;
|
||||
|
||||
|
|
|
@ -114,7 +114,7 @@ static inline void log_assert_worker(bool cond, const char *expr, const char *fi
|
|||
// This is the magic behind the code coverage counters
|
||||
// ---------------------------------------------------
|
||||
|
||||
#if defined(YOSYS_ENABLE_COVER) && (defined(__linux__) || defined(__FreeBSD__))
|
||||
#if defined(YOSYS_ENABLE_COVER) && defined(__linux__)
|
||||
|
||||
#define cover(_id) do { \
|
||||
static CoverData __d __attribute__((section("yosys_cover_list"), aligned(1), used)) = { __FILE__, __FUNCTION__, _id, __LINE__, 0 }; \
|
||||
|
|
|
@ -46,15 +46,10 @@
|
|||
# include <unistd.h>
|
||||
# include <dirent.h>
|
||||
# include <sys/types.h>
|
||||
# include <sys/wait.h>
|
||||
# include <sys/stat.h>
|
||||
# include <glob.h>
|
||||
#endif
|
||||
|
||||
#ifdef __FreeBSD__
|
||||
# include <sys/sysctl.h>
|
||||
#endif
|
||||
|
||||
#include <limits.h>
|
||||
#include <errno.h>
|
||||
|
||||
|
@ -77,7 +72,7 @@ std::vector<void*> memhasher_store;
|
|||
|
||||
void memhasher_on()
|
||||
{
|
||||
#if defined(__linux__) || defined(__FreeBSD__)
|
||||
#ifdef __linux__
|
||||
memhasher_rng += time(NULL) << 16 ^ getpid();
|
||||
#endif
|
||||
memhasher_store.resize(0x10000);
|
||||
|
@ -672,26 +667,6 @@ std::string proc_self_dirname()
|
|||
buflen--;
|
||||
return std::string(path, buflen);
|
||||
}
|
||||
#elif defined(__FreeBSD__)
|
||||
std::string proc_self_dirname()
|
||||
{
|
||||
int mib[4] = {CTL_KERN, KERN_PROC, KERN_PROC_PATHNAME, -1};
|
||||
size_t buflen;
|
||||
char *buffer;
|
||||
std::string path;
|
||||
if (sysctl(mib, 4, NULL, &buflen, NULL, 0) != 0)
|
||||
log_error("sysctl failed: %s\n", strerror(errno));
|
||||
buffer = (char*)malloc(buflen);
|
||||
if (buffer == NULL)
|
||||
log_error("malloc failed: %s\n", strerror(errno));
|
||||
if (sysctl(mib, 4, buffer, &buflen, NULL, 0) != 0)
|
||||
log_error("sysctl failed: %s\n", strerror(errno));
|
||||
while (buflen > 0 && buffer[buflen-1] != '/')
|
||||
buflen--;
|
||||
path.assign(buffer, buflen);
|
||||
free(buffer);
|
||||
return path;
|
||||
}
|
||||
#elif defined(__APPLE__)
|
||||
std::string proc_self_dirname()
|
||||
{
|
||||
|
|
|
@ -128,7 +128,7 @@ struct CoverPass : public Pass {
|
|||
log("\n");
|
||||
}
|
||||
|
||||
#if defined(YOSYS_ENABLE_COVER) && (defined(__linux__) || defined(__FreeBSD__))
|
||||
#if defined(YOSYS_ENABLE_COVER) && defined(__linux__)
|
||||
for (auto &it : get_coverage_data()) {
|
||||
if (!patterns.empty()) {
|
||||
for (auto &p : patterns)
|
||||
|
|
Loading…
Reference in New Issue