summaryrefslogtreecommitdiffstats
path: root/llvm
diff options
context:
space:
mode:
authorRoman Tereshin <rtereshin@apple.com>2018-05-31 16:16:47 +0000
committerRoman Tereshin <rtereshin@apple.com>2018-05-31 16:16:47 +0000
commitcc1a16fdf9d5f53f01486b48584b4119a2af359e (patch)
tree56b8724e1fce4669563f137b8e49d68d6ba16792 /llvm
parentff0623cd29545720177439c3e65df2e2ac07db87 (diff)
downloadbcm5719-llvm-cc1a16fdf9d5f53f01486b48584b4119a2af359e.tar.gz
bcm5719-llvm-cc1a16fdf9d5f53f01486b48584b4119a2af359e.zip
[GlobalISel][X86] LegalizerInfo verifier: Adding LegalizerInfo::verify(...) call and fixing bugs exposed
Reviewers: aemerson, qcolombet Reviewed By: qcolombet Differential Revision: https://reviews.llvm.org/D46339 llvm-svn: 333662
Diffstat (limited to 'llvm')
-rw-r--r--llvm/lib/Target/X86/X86LegalizerInfo.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/llvm/lib/Target/X86/X86LegalizerInfo.cpp b/llvm/lib/Target/X86/X86LegalizerInfo.cpp
index c5e37d56d0e..b8c31ddc004 100644
--- a/llvm/lib/Target/X86/X86LegalizerInfo.cpp
+++ b/llvm/lib/Target/X86/X86LegalizerInfo.cpp
@@ -82,6 +82,7 @@ X86LegalizerInfo::X86LegalizerInfo(const X86Subtarget &STI,
G_CONSTANT, 0, widenToLargerTypesAndNarrowToLargest);
computeTables();
+ verify(*STI.getInstrInfo());
}
void X86LegalizerInfo::setLegalizerInfo32bit() {
@@ -129,7 +130,7 @@ void X86LegalizerInfo::setLegalizerInfo32bit() {
.legalForCartesianProduct({s1, s8, s16, s32}, {p0})
.maxScalar(0, s32)
.widenScalarToNextPow2(0, /*Min*/ 8);
- getActionDefinitionsBuilder(G_INTTOPTR).legalFor({s32, p0});
+ getActionDefinitionsBuilder(G_INTTOPTR).legalFor({{p0, s32}});
// Shifts and SDIV
getActionDefinitionsBuilder({G_SHL, G_LSHR, G_ASHR, G_SDIV})
@@ -201,7 +202,7 @@ void X86LegalizerInfo::setLegalizerInfo64bit() {
.legalForCartesianProduct({s1, s8, s16, s32, s64}, {p0})
.maxScalar(0, s64)
.widenScalarToNextPow2(0, /*Min*/ 8);
- getActionDefinitionsBuilder(G_INTTOPTR).legalFor({s64, p0});
+ getActionDefinitionsBuilder(G_INTTOPTR).legalFor({{p0, s64}});
// Constants
setAction({TargetOpcode::G_CONSTANT, s64}, Legal);
OpenPOWER on IntegriCloud