1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-21 03:53:04 +02:00
llvm-mirror/lib/Transforms/InstCombine
Philip Reames 28e49b3a15 Reapply 267210 with fix for PR27490
Original Commit Message
Extend load/store type canonicalization to handle unordered operations

Extend the type canonicalization logic to work for unordered atomic loads and stores.  Note that while this change itself is fairly simple and low risk, there's a reasonable chance this will expose problems in the backends by suddenly generating IR they wouldn't have seen before.  Anything of this nature will be an existing bug in the backend (you could write an atomic float load), but this will definitely change the frequency with which such cases are encountered.  If you see problems, feel free to revert this change, but please make sure you collect a test case. 

Note that the concern about lowering is now much less likely.  PR27490 proved that we already *were* mucking with the types of ordered atomics and volatiles.  As a result, this change doesn't introduce as much new behavior as originally thought.

llvm-svn: 268809
2016-05-06 22:17:01 +00:00
..
CMakeLists.txt Use ADDITIONAL_HEADER_DIRS in all LLVM CMake projects. 2015-02-11 03:28:02 +00:00
InstCombineAddSub.cpp Remove uses of builtin comma operator. 2016-02-18 22:09:30 +00:00
InstCombineAndOrXor.cpp Cleanup redundant expression in InstCombineAndOrXor. 2016-04-25 20:15:33 +00:00
InstCombineCalls.cpp [InstCombine][SSE] Added support to VPERMD/VPERMPS to shuffle combine to accept UNDEF elements. 2016-05-01 20:43:02 +00:00
InstCombineCasts.cpp [InstCombine] Propagate operand bundles 2016-04-29 08:07:20 +00:00
InstCombineCompares.cpp "Reapply r268521 "[InstCombine] Canonicalize icmp instructions based on dominating conditions."" 2016-05-04 21:32:14 +00:00
InstCombineInternal.h [InstCombine] Combine A->B->A BitCast 2016-03-17 18:47:20 +00:00
InstCombineLoadStoreAlloca.cpp Reapply 267210 with fix for PR27490 2016-05-06 22:17:01 +00:00
InstCombineMulDivRem.cpp Remove uses of builtin comma operator. 2016-02-18 22:09:30 +00:00
InstCombinePHI.cpp [InstCombine] Preserve fast math flags when combining PHIs 2016-04-22 11:21:36 +00:00
InstCombineSelect.cpp [InstCombine] Determine the result of a select based on a dominating condition. 2016-04-29 21:12:31 +00:00
InstCombineShifts.cpp add FIXME comment; NFC 2016-04-11 17:35:57 +00:00
InstCombineSimplifyDemanded.cpp [InstCombine] clean up; NFC 2016-04-29 20:54:56 +00:00
InstCombineVectorOps.cpp Fix an issue where fast math flags were dropped during scalarization. 2016-03-01 19:35:52 +00:00
InstructionCombining.cpp Test commit: modified comment. NFC 2016-04-25 13:58:05 +00:00
LLVMBuild.txt Update libdeps since TLI was moved from Target to Analysis in r226078. 2015-01-15 05:21:00 +00:00