@@ -286,11 +286,6 @@ environment variable. We first document the most relevant and most commonly used
286
286
specific circumstances, but Miri's behavior will also be more stable across versions and targets.
287
287
This is equivalent to `-Zmiri-fixed-schedule -Zmiri-compare-exchange-weak-failure-rate=0.0
288
288
-Zmiri-address-reuse-cross-thread-rate=0.0 -Zmiri-disable-weak-memory-emulation`.
289
- * `-Zmiri-deterministic-floats` makes Miri's floating-point behavior fully deterministic. This means
290
- that operations will always return the preferred NaN, imprecise operations will not have any
291
- random error applied to them, and `min`/`max` as "maybe fused" multiply-add all behave
292
- deterministically. Note that Miri still uses host floats for some operations, so behavior can
293
- still differ depending on the host target and setup.
294
289
* `-Zmiri-disable-isolation` disables host isolation. As a consequence,
295
290
the program has access to host resources such as environment variables, file
296
291
systems, and randomness.
@@ -324,6 +319,8 @@ environment variable. We first document the most relevant and most commonly used
324
319
Can be used without a value; in that case the range defaults to `0..64`.
325
320
* `-Zmiri-many-seeds-keep-going` tells Miri to really try all the seeds in the given range, even if
326
321
a failing seed has already been found. This is useful to determine which fraction of seeds fails.
322
+ * `-Zmiri-no-extra-rounding-error` stops Miri from adding extra rounding errors to float operations
323
+ that do not have a guaranteed precision.
327
324
* `-Zmiri-num-cpus` states the number of available CPUs to be reported by miri. By default, the
328
325
number of available CPUs is `1`. Note that this flag does not affect how miri handles threads in
329
326
any way.
@@ -376,6 +373,12 @@ to Miri failing to detect cases of undefined behavior in a program.
376
373
will always fail and `0.0` means it will never fail. Note that setting it to
377
374
` 1.0` will likely cause hangs, since it means programs using
378
375
` compare_exchange_weak` cannot make progress.
376
+ * `-Zmiri-deterministic-floats` makes Miri's floating-point behavior fully deterministic. This means
377
+ that operations will always return the preferred NaN, imprecise operations will not have any
378
+ random error applied to them, and `min`/`max` and "maybe fused" multiply-add all behave
379
+ deterministically. Note that Miri still uses host floats for some operations, so behavior can
380
+ still differ depending on the host target and setup. See `-Zmiri-no-extra-rounding-error` for
381
+ a flag that specifically only disables the random error.
379
382
* `-Zmiri-disable-alignment-check` disables checking pointer alignment, so you
380
383
can focus on other failures, but it means Miri can miss bugs in your program.
381
384
Using this flag is **unsound**.
0 commit comments