This patch adds the register class for MIPS16 as well as the ability for
authorAkira Hatanaka <ahatanaka@mips.com>
Wed, 16 May 2012 22:19:56 +0000 (22:19 +0000)
committerAkira Hatanaka <ahatanaka@mips.com>
Wed, 16 May 2012 22:19:56 +0000 (22:19 +0000)
commit66e19c3e9db6e2727be21074a52f5c9fa187050f
treec69324d29909da842676fa2e4b2c502c6f446625
parentbec5463937a4e0832188327e43cf00cb7e712e38
This patch adds the register class for MIPS16 as well as the ability for
llc to recognize MIPS16 as a MIPS ASE extension. -mips16 will mean the
mips16 ASE for mips32 by default.

As part of fixing of adding this we discovered some small changes that
need to be made to MipsInstrInfo::storeRegToStackSLot and
MipsInstrInfo::loadRegFromStackSlot. We were using some "==" equality tests
where in fact we should have been using Mips::<regclas>.hasSubClassEQ instead,
per suggestion of Jakob Stoklund Olesen.

Patch by Reed Kotler.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156958 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/Mips/Mips.td
lib/Target/Mips/MipsInstrInfo.cpp
lib/Target/Mips/MipsRegisterInfo.td
lib/Target/Mips/MipsSubtarget.cpp
lib/Target/Mips/MipsSubtarget.h