summaryrefslogtreecommitdiff
path: root/src/pass.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/pass.h')
-rw-r--r--src/pass.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/pass.h b/src/pass.h
index a3ee41d61..27e7ee37f 100644
--- a/src/pass.h
+++ b/src/pass.h
@@ -102,6 +102,11 @@ struct PassOptions {
// many cases.
bool lowMemoryUnused = false;
enum { LowMemoryBound = 1024 };
+ // Whether to allow "loose" math semantics, ignoring corner cases with NaNs
+ // and assuming math follows the algebraic rules for associativity and so
+ // forth (which IEEE floats do not, strictly speaking). This is inspired by
+ // gcc/clang's -ffast-math flag.
+ bool fastMath = false;
// Whether to try to preserve debug info through, which are special calls.
bool debugInfo = false;
// Arbitrary string arguments from the commandline, which we forward to