summaryrefslogtreecommitdiffstats
path: root/llvm/test/tools/llvm-objdump/X86
diff options
context:
space:
mode:
authorSimon Pilgrim <llvm-dev@redking.me.uk>2019-05-24 10:03:11 +0000
committerSimon Pilgrim <llvm-dev@redking.me.uk>2019-05-24 10:03:11 +0000
commit95b8d9bbf852428fc738bb93c78ef7b00f39341f (patch)
treecfd2ae0884d113480973daa6a1b39041ad8baa68 /llvm/test/tools/llvm-objdump/X86
parent980f7605156e76fe2310fccca1581e5860c1512e (diff)
downloadbcm5719-llvm-95b8d9bbf852428fc738bb93c78ef7b00f39341f.tar.gz
bcm5719-llvm-95b8d9bbf852428fc738bb93c78ef7b00f39341f.zip
[SelectionDAG] computeKnownBits - support constant pool values from target
This patch adds the overridable TargetLowering::getTargetConstantFromLoad function which allows targets to return any constant value loaded by a LoadSDNode node - only X86 makes use of this so far but everything should be in place for other targets. computeKnownBits then uses this function to improve codegen, notably vector code after legalization. A future commit will do the same for ComputeNumSignBits but computeKnownBits sees the bigger benefit. This required a couple of fixes: * SimplifyDemandedBits must early-out for getTargetConstantFromLoad cases to prevent infinite loops of constant regeneration (similar to what we already do for BUILD_VECTOR). * Fix a DAGCombiner::visitTRUNCATE issue as we had trunc(shl(v8i32),v8i16) <-> shl(trunc(v8i16),v8i32) infinite loops after legalization on AVX512 targets. Differential Revision: https://reviews.llvm.org/D61887 llvm-svn: 361620
Diffstat (limited to 'llvm/test/tools/llvm-objdump/X86')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud