1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-25 20:23:11 +01:00
llvm-mirror/lib/Transforms
Joseph Huber 8cfcdee95e [LV] Add analysis remark for mixed precision conversions
Floating point conversions inside vectorized loops have performance
implications but are very subtle. The user could specify a floating
point constant, or call a function without realizing that it will
force a change in the vector width. An example of this behaviour is
seen in https://godbolt.org/z/M3nT6c . The vectorizer should indicate
when this happens becuase it is most likely unintended behaviour.

This patch adds a simple check for this behaviour by following floating
point stores in the original loop and checking if a floating point
conversion operation occurs.

Reviewed By: fhahn

Differential Revision: https://reviews.llvm.org/D95539
2021-02-17 21:37:08 -05:00
..
AggressiveInstCombine
CFGuard
Coroutines [coro async] Don't promote allocas to the frame or rewrite swifterror if there are no suspend points 2021-02-16 09:05:38 -08:00
Hello
InstCombine [InstCombine] fold fcmp-of-copysign idiom 2021-02-17 10:32:33 -05:00
Instrumentation [PGO] Drop unnecessary const from return types (NFC) 2021-02-11 23:31:29 -08:00
IPO [WPD] Add an optional checking mode for debugging devirtualization 2021-02-17 16:46:15 -08:00
ObjCARC [ObjC][ARC] Do not perform code motion on precise release calls 2021-02-15 17:39:37 -08:00
Scalar [SROA] Propagate correct TBAA/TBAA Struct offsets 2021-02-17 11:59:00 -05:00
Utils [SampleFDO] Third Try: Refactor SampleProfile.cpp 2021-02-17 15:31:50 -08:00
Vectorize [LV] Add analysis remark for mixed precision conversions 2021-02-17 21:37:08 -05:00
CMakeLists.txt