Work-around for inlining bug in icc 16.0.3 (#248)
Fixes #247. Forces evaluation of partition bounds call within the `div_component_sampler` constructor, which for subtle and obscure reasons is mis- or un-computed with icpc and the `-xMIC-AVX512` target option. * Add `compat::sink()` function that forces evaluation of the argument. * Add `compat::sink_if_icc_leq(version, const X&)` function that performs this only when run with the Intel compiler subject to version bound. * Use the `compat::sink_if_icc_leq` function in the `div_component_sampler` constructor.
Please register or sign in to comment