[mips][microMIPS] This patch implements functionality in MIPS delay slot
authorJozef Kolek <jozef.kolek@imgtec.com>
Fri, 21 Nov 2014 22:04:35 +0000 (22:04 +0000)
committerJozef Kolek <jozef.kolek@imgtec.com>
Fri, 21 Nov 2014 22:04:35 +0000 (22:04 +0000)
commitd9accc1e5fa49f392004194bb733d99d4d9c35d4
tree0f117c90ceb70147a8fa3695e783d6aadfacd59d
parente83cdb9792092c5a93a6465aa42239a9a7fa4522
[mips][microMIPS] This patch implements functionality in MIPS delay slot
filler such as if delay slot filler have to put NOP instruction into the
delay slot of microMIPS BEQ or BNE instruction which uses the register $0,
then instead of emitting NOP this instruction is replaced by the corresponding
microMIPS compact branch instruction, i.e. BEQZC or BNEZC.

Differential Revision: http://reviews.llvm.org/D3566

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@222580 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/Mips/MipsDelaySlotFiller.cpp
lib/Target/Mips/MipsLongBranch.cpp
lib/Target/Mips/MipsSEInstrInfo.cpp
test/CodeGen/Mips/micromips-atomic.ll
test/CodeGen/Mips/micromips-compact-branches.ll [new file with mode: 0644]