1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2025-01-31 20:51:52 +01:00
Craig Topper 8532085a99 [DAGCombiner][X86] When promoting loads don't use ZEXTLOAD even its legal
We were previously prefering ZEXTLOAD over EXTLOAD if it is legal. This triggers during X86's promotion of i16->i32. Not sure about other targets.

Using ZEXTLOAD can prevent folding it to SEXTLOAD later if we were to promote a sign extended operand like we would need for SRA. However, X86 doesn't currently promote i16 SRA. I was looking into doing that which is how I found this issue.

This is also blocking our ability to fold 4 byte aligned EXTLOADs with "loadi32". This is what caused most of the test changes here.

Differential Revision: https://reviews.llvm.org/D45585#inline-402825

llvm-svn: 330781
2018-04-24 22:35:27 +00:00
..
2018-04-07 19:50:09 +00:00
2018-02-07 13:28:23 +00:00
2018-02-28 22:57:23 +00:00
2018-02-28 22:57:23 +00:00
2018-03-26 21:07:59 +00:00
2018-02-06 18:18:49 +00:00
2018-03-26 21:07:59 +00:00
2018-04-13 11:37:06 +00:00
2018-02-11 13:12:50 +00:00
2018-01-19 12:05:58 +00:00
2018-04-20 16:46:58 +00:00