GCC Code Coverage Report


Directory: src/
Coverage: low: ≥ 0% medium: ≥ 75.0% high: ≥ 90.0%
Coverage Exec / Excl / Total
Lines: 0.0% 0 / 0 / 4
Functions: 0.0% 0 / 0 / 1
Branches: -% 0 / 0 / 0

optimize.hpp
Line Branch Exec Source
1 #pragma once
2 #pragma GCC optimize("unroll-loops")
3 #pragma GCC optimize("Ofast")
4 #pragma GCC target("sse,sse2,sse3,ssse3,popcnt,abm,mmx") // Safe for yandex
5
6 #pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,bmi,bmi2,mmx,avx,avx2,fma") // Requires AVX2
7
8 // See https://codeforces.com/blog/entry/96344
9
10 inline void disable_denormal_floats() {
11 // https://stackoverflow.com/a/8217313
12 #define CSR_FLUSH_TO_ZERO (1 << 15)
13 unsigned csr = __builtin_ia32_stmxcsr();
14 csr |= CSR_FLUSH_TO_ZERO;
15 __builtin_ia32_ldmxcsr(csr);
16 #undef CSR_FLUSH_TO_ZERO
17 }
18