DoNotOptimise
Contains functions preventing some compiler optimisations, namely dead code removal. This is useful for benchmarking purposes.
primitive val DoNotOptimise
Constructors
create
new val create() : DoNotOptimise val^
Returns
- DoNotOptimise val^
Public Functions
apply[A: A]
Prevent the compiler from optimising out obj and any computation it is derived from. This doesn't prevent constant propagation.
fun box apply[A: A]( obj: A) : None val
Parameters
- obj: A
Returns
- None val
observe
Prevent the compiler from optimising out writes to an object marked by the apply function.
fun box observe() : None val
Returns
- None val
eq
fun box eq( that: DoNotOptimise val) : Bool val
Parameters
- that: DoNotOptimise val
Returns
- Bool val
ne
fun box ne( that: DoNotOptimise val) : Bool val
Parameters
- that: DoNotOptimise val
Returns
- Bool val
© 2016-2020, The Pony Developers
© 2014-2015, Causality Ltd.
Licensed under the BSD 2-Clause License.
https://stdlib.ponylang.io/builtin-DoNotOptimise