From 41072e3125f492ef5e1b47f08bfefbde9c2f74ff Mon Sep 17 00:00:00 2001 From: Nikolaj Bjorner Date: Tue, 8 May 2018 19:09:59 +0100 Subject: [PATCH] use __builtin_prefetch for clang/gcc Signed-off-by: Nikolaj Bjorner --- src/sat/sat_solver.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/sat/sat_solver.cpp b/src/sat/sat_solver.cpp index ee194721e..c75e74942 100644 --- a/src/sat/sat_solver.cpp +++ b/src/sat/sat_solver.cpp @@ -792,7 +792,11 @@ namespace sat { } if (m_config.m_propagate_prefetch) { +#if defined(__GLUC__) || defined(__clang__) + __builtin_prefetch((const char*)(&*(m_watches[l.index()].c_ptr())); +#else _mm_prefetch((const char*)(&*(m_watches[l.index()].c_ptr())), _MM_HINT_T1); +#endif } SASSERT(!l.sign() || m_phase[v] == NEG_PHASE);