Some instructions are passed to the assembler to be
authorJack Carter <jcarter@mips.com>
Tue, 28 Aug 2012 19:07:39 +0000 (19:07 +0000)
committerJack Carter <jcarter@mips.com>
Tue, 28 Aug 2012 19:07:39 +0000 (19:07 +0000)
commit69dba7e20476ec0e64791e47b498ae3a69619f7d
tree0db6a376d87abeb78ac6345e53868e7178a67746
parentc6c2ced38411215e5bf46ded787c23810160dfa7
Some instructions are passed to the assembler to be
transformed to the final instruction variant. An
example would be dsrll which is transformed into
dsll32 if the shift value is greater than 32.

For direct object output we need to do this transformation
in the codegen. If the instruction was inside branch
delay slot, it was being missed. This patch corrects this
oversight.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162779 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/Mips/MipsAsmPrinter.cpp
test/MC/Mips/mips64shift.ll