[mips] [IAS] Slightly improve shift instruction generation in expandLoadImm.
authorToma Tabacu <toma.tabacu@imgtec.com>
Fri, 1 May 2015 10:26:47 +0000 (10:26 +0000)
committerToma Tabacu <toma.tabacu@imgtec.com>
Fri, 1 May 2015 10:26:47 +0000 (10:26 +0000)
commit80683c0be6e3bee0f99dd4cca84bb020a6819290
tree558719cea3cbd41d23902c8ffd5f2961ab610fdd
parent509fb2c84c5b1cbff85c5963d5a112dd157e91ad
[mips] [IAS] Slightly improve shift instruction generation in expandLoadImm.

Summary:
Generate one DSLL32 of 0 instead of two consecutive DSLL of 16.
In order to do this I had to change createLShiftOri's template argument from a bool to an unsigned.

This also gave me the opportunity to rewrite the mips64-expansions.s test, as it was testing the same cases multiple times and skipping over other cases.
It was also somewhat unreadable, as the CHECK lines were grouped in a huge block of text at the beginning of the file.

Reviewers: dsanders

Reviewed By: dsanders

Subscribers: llvm-commits

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@236311 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/Mips/AsmParser/MipsAsmParser.cpp
test/MC/Mips/mips64-expansions.s