rust/compiler/rustc_codegen_ssa/src
bors bb8b11e67d Auto merge of #120718 - saethlin:reasonable-fast-math, r=nnethercote
Add "algebraic" fast-math intrinsics, based on fast-math ops that cannot return poison

Setting all of LLVM's fast-math flags makes our fast-math intrinsics very dangerous, because some inputs are UB. This set of flags permits common algebraic transformations, but according to the [LangRef](https://llvm.org/docs/LangRef.html#fastmath), only the flags `nnan` (no nans) and `ninf` (no infs) can produce poison.

And this uses the algebraic float ops to fix https://github.com/rust-lang/rust/issues/120720

cc `@orlp`
2024-02-21 09:43:33 +00:00
..
back wasm: Store rlib metadata in wasm object files 2024-02-20 09:31:50 -08:00
debuginfo Add CoroutineClosure to TyKind, AggregateKind, UpvarArgs 2024-02-06 02:22:58 +00:00
mir Add "algebraic" versions of the fast-math intrinsics 2024-02-20 12:39:03 -05:00
traits Auto merge of #120718 - saethlin:reasonable-fast-math, r=nnethercote 2024-02-21 09:43:33 +00:00
assert_module_sources.rs clean up potential_query_instability with FxIndexMap and UnordMap 2024-02-14 18:36:37 +08:00
base.rs clean up potential_query_instability with FxIndexMap and UnordMap 2024-02-14 18:36:37 +08:00
codegen_attrs.rs is_closure_like 2024-02-11 22:09:52 +00:00
common.rs move ConstValue into mir 2023-09-19 11:11:02 +02:00
errors.rs Use better heuristic for printing Cargo specific diagnostics 2024-02-17 16:49:01 +01:00
lib.rs clean up potential_query_instability with FxIndexMap and UnordMap 2024-02-14 18:36:37 +08:00
meth.rs cg_ssa: remove pointee types and pointercast/bitcast-of-ptr 2023-07-29 13:18:20 -04:00
mono_item.rs Fix clippy::needless_borrow in the compiler 2023-11-21 20:13:40 +01:00
size_of_val.rs fix computing the dynamic alignment of packed structs with dyn trait tails 2023-12-13 20:21:57 +01:00
target_features.rs Bump indexmap 2024-02-13 21:03:34 +00:00