]> granicus.if.org Git - llvm/commit
GlobalISel: verify that a COPY is trivial when created.
authorTim Northover <tnorthover@apple.com>
Tue, 27 Jun 2017 21:41:40 +0000 (21:41 +0000)
committerTim Northover <tnorthover@apple.com>
Tue, 27 Jun 2017 21:41:40 +0000 (21:41 +0000)
commit96470fe7e99e340ff67454d98c32935a43e530c5
tree20e302799674845456e2a19524e42fa8f246c4ef
parentd1357b6fb272f2284f140e4d36dc75f536ed6c32
GlobalISel: verify that a COPY is trivial when created.

Without this check, COPY instructions can actually be one of the generic casts
in disguise. That's confusing and bad.

At some point during ISel this restriction has to be relaxed since the fully
selected instructions will usually use COPY for those purposes. Right now I
think it's possible that relaxation occurs during RegBankSelect (hence the
change there). I'm not convinced that's where it belongs long-term though.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@306470 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/GlobalISel/MachineIRBuilder.cpp
lib/CodeGen/GlobalISel/RegBankSelect.cpp
test/CodeGen/AArch64/GlobalISel/legalize-exceptions.ll