-/* Copyright (c) 2014-2018. The SimGrid Team. All rights reserved. */
+/* Copyright (c) 2014-2019. The SimGrid Team. All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
* under the terms of the license (GNU LGPL) which comes with this package. */
"libthr", /* thread library */
"libutil",
#endif
- "libasan", /* gcc sanitizers */
"libargp", /* workarounds for glibc-less systems */
- "libtsan",
- "libubsan",
- "libbz2",
+ "libasan", /* gcc sanitizers */
"libboost_chrono",
"libboost_context",
"libboost_context-mt",
+ "libboost_stacktrace_backtrace",
"libboost_system",
"libboost_thread",
"libboost_timer",
"libboost_unit_test_framework",
+ "libbz2",
"libc",
"libc++",
"libcdt",
"libdl",
"libdw",
"libelf",
+ "libevent",
"libexecinfo",
"libflang",
- "libevent",
+ "libflangrti",
"libgcc_s",
"libgfortran",
"libimf",
"liblua5.3",
"liblzma",
"libm",
+ "libomp",
"libpapi",
"libpfm",
+ "libpgmath",
"libpthread",
"libquadmath",
"librt",
"libstdc++",
"libsvml",
+ "libtsan", /* gcc sanitizers */
+ "libubsan", /* gcc sanitizers */
"libunwind",
- "libunwind-x86_64",
- "libunwind-x86",
"libunwind-ptrace",
+ "libunwind-x86",
+ "libunwind-x86_64",
"libz"};
static bool is_simgrid_lib(const std::string& libname)
const void* RemoteClient::read_bytes(void* buffer, std::size_t size, RemotePtr<void> address, int process_index,
ReadOptions options) const
{
+#if HAVE_SMPI
if (process_index != simgrid::mc::ProcessIndexDisabled) {
std::shared_ptr<simgrid::mc::ObjectInformation> const& info = this->find_object_info_rw(address);
-// Segment overlap is not handled.
-#if HAVE_SMPI
+ // Segment overlap is not handled.
if (info.get() && this->privatized(*info)) {
if (process_index < 0)
xbt_die("Missing process index");
size_t offset = address.address() - (std::uint64_t)info->start_rw;
address = remote((char*)privatization_region.address + offset);
}
-#endif
}
+#endif
if (pread_whole(this->memory_file, buffer, size, (size_t)address.address()) < 0)
xbt_die("Read at %p from process %lli failed", (void*)address.address(), (long long)this->pid_);
return buffer;