- git config --global core.longpaths true
- git config --global core.autocrlf input
-#platform:
-# - Win32 # This is Windows 32bits
-# - x64 # This is Windows 64bits
-
environment:
global:
BOOST_ROOT: c:\Libraries\boost_1_59_0
matrix:
- COMPILER: MSVC15
PLATFORM: Win32
- - COMPILER: MSVC15
- PLATFORM: x64
- COMPILER: MinGW-w64
+
+# - COMPILER: MSVC15
+# PLATFORM: x64
install:
- if [%COMPILER%]==[MinGW] set PATH=C:\MinGW\bin;%PATH%
- if [%COMPILER%]==[MinGW-w64] set PATH=C:\mingw64\bin;%PATH%
-- if [%COMPILER%]==[MSYS2] set PATH=C:\msys64\bin,%PATH%
- if [%COMPILER%]==[MinGW-w64] rename "C:\Program Files (x86)\Git\bin\sh.exe" "sh2.exe"
+- if [%COMPILER%]==[MSYS2] set PATH=C:\msys64\bin,%PATH%
build_script:
- if [%COMPILER%]==[MSVC15] if [%PLATFORM%]==[Win32] cmake -G "Visual Studio 14 2015" -Denable_smpi=OFF -Denable_mallocators=OFF .
#### Attribute list ####
-As already written above, the \c process tag is the tag that defines which host
+%As already written above, the \c process tag is the tag that defines which host
executes which function (from your application). Hence, the \c host and \c function
attributes are mandatory; however, there are some optional attributes to the process tag. Here is a list of all attributes of this tag:
bool privatized() const
{
+#ifdef HAVE_SMPI
return this->executable() && smpi_privatize_global_variables;
+#else
+ return false;
+#endif
}
void* base_address() const;
namespace simgrid {
namespace mc {
+#ifdef HAVE_SMPI
simgrid::mc::RegionSnapshot privatized_region(
RegionType region_type, void *start_addr, void* permanent_addr, size_t size
)
region.privatized_data(std::move(data));
return std::move(region);
}
+#endif
}
}
else if (type == simgrid::mc::RegionType::Heap)
xbt_assert(!object_info, "Unexpected object info for heap region.");
- const bool privatization_aware = object_info && object_info->privatized();
-
simgrid::mc::RegionSnapshot region;
+
+#ifdef HAVE_SMPI
+ const bool privatization_aware = object_info && object_info->privatized();
if (privatization_aware && MC_smpi_process_count())
region = simgrid::mc::privatized_region(type, start_addr, permanent_addr, size);
else
+#endif
region = simgrid::mc::region(type, start_addr, permanent_addr, size);
region.object_info(object_info);
}
link[res] = '\0';
+#ifdef HAVE_SMPI
if(smpi_is_privatisation_file(link))
continue;
+#endif
// This is (probably) the DIR* we are reading:
// TODO, read all the file entries at once and close the DIR.*
std::shared_ptr<simgrid::mc::ObjectInformation> const& info =
this->find_object_info_rw((void*)address.address());
// Segment overlap is not handled.
+#ifdef HAVE_SMPI
if (info.get() && info.get()->privatized()) {
if (process_index < 0)
xbt_die("Missing process index");
size_t offset = address.address() - (std::uint64_t)info->start_rw;
address = remote((char*)privatisation_region.address + offset);
}
+#endif
}
if (this->is_self()) {
return info->name;
}
+#ifdef HAVE_SMPI
int MC_smpi_process_count(void)
{
if (mc_mode == MC_MODE_CLIENT)
return res;
}
}
+#endif
unsigned long MC_smx_get_maxpid(void)
{