llvm-project/llvm/lib/CodeGen/SelectionDAG
Tim Renouf d68fa1be57 [SelectionDAG] Fixed f16-from-vector promotion problem
Summary:
In the case of an fp_extend of v1f16 to v1f32 where the v1f16 is the
result of a bitcast from i16, avoid creating an illegal fp16_to_fp where
the input is not a vector and the result is a v1f32.

V2: The fix is now to avoid vector scalarization creating a v1->scalar
bitcast.

Reviewers: srhines, t.p.northover

Subscribers: nhaehnle, llvm-commits, dstuttard, t-tye, yaxunl, wdng, kzhuravl, arsenm

Differential Revision: https://reviews.llvm.org/D41126

llvm-svn: 322120
2018-01-09 21:36:25 +00:00
..
CMakeLists.txt Remove trailing whitespace to trigger re-cmaking 2017-10-02 21:54:38 +00:00
DAGCombiner.cpp [DAG] Elide overlapping stores 2018-01-09 15:23:12 +00:00
FastISel.cpp Use phi ranges to simplify code. No functionality change intended. 2017-12-30 15:27:33 +00:00
FunctionLoweringInfo.cpp Use phi ranges to simplify code. No functionality change intended. 2017-12-30 15:27:33 +00:00
InstrEmitter.cpp Fix a bunch more layering of CodeGen headers that are in Target 2017-11-17 01:07:10 +00:00
InstrEmitter.h
LLVMBuild.txt
LegalizeDAG.cpp [SelectionDAG] lower math intrinsics to finite version of libcalls when possible (PR35672) 2018-01-09 15:41:00 +00:00
LegalizeFloatTypes.cpp [SelectionDAG][X86] Don't use ->getValueType(0) after a call to getOperand to get the type of the operand. 2017-12-23 02:54:50 +00:00
LegalizeIntegerTypes.cpp [PowerPC] Add an ISD::TRUNCATE to the legalization for ppc_is_decremented_ctr_nonzero 2018-01-07 07:51:36 +00:00
LegalizeTypes.cpp Add optional SelectionDAG* parameter to SValue::dump and SDValue::dumpr 2017-12-20 15:15:04 +00:00
LegalizeTypes.h [SelectionDAG] Don't promote mask operand when widening mstore and mscatter. 2017-12-05 23:08:30 +00:00
LegalizeTypesGeneric.cpp DAG: Add nuw when splitting loads and stores 2017-11-29 01:25:12 +00:00
LegalizeVectorOps.cpp [SelectionDAG][X86][AArch64] Require targets to specify the promotion type when using setOperationAction Promote for INT_TO_FP and FP_TO_INT 2018-01-01 19:21:35 +00:00
LegalizeVectorTypes.cpp [SelectionDAG] Fixed f16-from-vector promotion problem 2018-01-09 21:36:25 +00:00
ResourcePriorityQueue.cpp Silence a bunch of implicit fallthrough warnings 2017-12-19 22:05:25 +00:00
SDNodeDbgValue.h Doxygenify comments. 2017-10-24 17:23:40 +00:00
ScheduleDAGFast.cpp Fix a bunch more layering of CodeGen headers that are in Target 2017-11-17 01:07:10 +00:00
ScheduleDAGRRList.cpp [CodeGen] Unify MBB reference format in both MIR and debug output 2017-12-04 17:18:51 +00:00
ScheduleDAGSDNodes.cpp Fix a bunch more layering of CodeGen headers that are in Target 2017-11-17 01:07:10 +00:00
ScheduleDAGSDNodes.h [Target] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-01-11 01:45:03 +00:00
ScheduleDAGVLIW.cpp [CodeGen] Unify MBB reference format in both MIR and debug output 2017-12-04 17:18:51 +00:00
SelectionDAG.cpp [SelectionDAG] lower math intrinsics to finite version of libcalls when possible (PR35672) 2018-01-09 15:41:00 +00:00
SelectionDAGAddressAnalysis.cpp [DAG] Teach BaseIndexOffset to correctly handle with indexed operations 2018-01-08 16:21:35 +00:00
SelectionDAGBuilder.cpp Use phi ranges to simplify code. No functionality change intended. 2017-12-30 15:27:33 +00:00
SelectionDAGBuilder.h Fix a bunch more layering of CodeGen headers that are in Target 2017-11-17 01:07:10 +00:00
SelectionDAGDumper.cpp [CodeGen] Rename functions PrintReg* to printReg* 2017-11-28 12:42:37 +00:00
SelectionDAGISel.cpp [SelectionDAG] lower math intrinsics to finite version of libcalls when possible (PR35672) 2018-01-09 15:41:00 +00:00
SelectionDAGPrinter.cpp Remove redundant includes from lib/CodeGen. 2017-12-13 21:30:47 +00:00
SelectionDAGTargetInfo.cpp [CodeGen] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-09-13 21:15:20 +00:00
StatepointLowering.cpp Use getStoreSize() in various places instead of 'BitSize >> 3'. 2017-11-28 14:44:32 +00:00
StatepointLowering.h [CodeGen] Fix some Clang-tidy modernize-use-default-member-init and Include What You Use warnings; other minor fixes (NFC). 2017-09-27 23:26:01 +00:00
TargetLowering.cpp [DAG] Fix for Bug PR34620 - Allow SimplifyDemandedBits to look through bitcasts 2018-01-07 19:09:40 +00:00