ecnerwala's competitive programming library
#include "optimize.hpp"
| Coverage | Exec / Excl / Total | |
|---|---|---|
| Lines | 0.0% | 0 / 0 / 4 |
| Functions | 0.0% | 0 / 0 / 1 |
| Full report |
#pragma once
#pragma GCC optimize("unroll-loops")
#pragma GCC optimize("Ofast")
#pragma GCC target("sse,sse2,sse3,ssse3,popcnt,abm,mmx") // Safe for yandex
#pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,bmi,bmi2,mmx,avx,avx2,fma") // Requires AVX2
// See https://codeforces.com/blog/entry/96344
inline void disable_denormal_floats() {
// https://stackoverflow.com/a/8217313
#define CSR_FLUSH_TO_ZERO (1 << 15)
unsigned csr = __builtin_ia32_stmxcsr();
csr |= CSR_FLUSH_TO_ZERO;
__builtin_ia32_ldmxcsr(csr);
#undef CSR_FLUSH_TO_ZERO
}
#line 2 "src/optimize.hpp"
#pragma GCC optimize("unroll-loops")
#pragma GCC optimize("Ofast")
#pragma GCC target("sse,sse2,sse3,ssse3,popcnt,abm,mmx") // Safe for yandex
#pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,bmi,bmi2,mmx,avx,avx2,fma") // Requires AVX2
// See https://codeforces.com/blog/entry/96344
inline void disable_denormal_floats() {
// https://stackoverflow.com/a/8217313
#define CSR_FLUSH_TO_ZERO (1 << 15)
unsigned csr = __builtin_ia32_stmxcsr();
csr |= CSR_FLUSH_TO_ZERO;
__builtin_ia32_ldmxcsr(csr);
#undef CSR_FLUSH_TO_ZERO
}
// clang-format off
// @formatter:off
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wpragmas"
#pragma GCC diagnostic ignored "-Wunknown-warning-option"
#pragma GCC diagnostic ignored "-Wmisleading-indentation"
#pragma GCC diagnostic ignored "-Wmultistatement-macros"
// src/optimize.hpp
#pragma GCC optimize("unroll-loops")
#pragma GCC optimize("Ofast")
#pragma GCC target("sse,sse2,sse3,ssse3,popcnt,abm,mmx")
#pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,bmi,bmi2,mmx,avx,avx2,fma")
inline void disable_denormal_floats(){
#define CSR_FLUSH_TO_ZERO (1 << 15)
unsigned csr=__builtin_ia32_stmxcsr();
csr|=CSR_FLUSH_TO_ZERO;
__builtin_ia32_ldmxcsr(csr);
#undef CSR_FLUSH_TO_ZERO
}
#pragma GCC diagnostic pop
// clang-format on
// @formatter:on
#pragma once
#pragma GCC optimize("unroll-loops")
#pragma GCC optimize("Ofast")
#pragma GCC target("sse,sse2,sse3,ssse3,popcnt,abm,mmx") // Safe for yandex
#pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,bmi,bmi2,mmx,avx,avx2,fma") // Requires AVX2
// See https://codeforces.com/blog/entry/96344
inline void disable_denormal_floats() {
// https://stackoverflow.com/a/8217313
#define CSR_FLUSH_TO_ZERO (1 << 15)
unsigned csr = __builtin_ia32_stmxcsr();
csr |= CSR_FLUSH_TO_ZERO;
__builtin_ia32_ldmxcsr(csr);
#undef CSR_FLUSH_TO_ZERO
}