[MIPS] Fix justify error for small structures
authorPetar Jovanovic <petar.jovanovic@imgtec.com>
Mon, 16 Mar 2015 15:01:09 +0000 (15:01 +0000)
committerPetar Jovanovic <petar.jovanovic@imgtec.com>
Mon, 16 Mar 2015 15:01:09 +0000 (15:01 +0000)
commitb3b90bd679b6fdb3546d83706d5a078ce1c0a1f3
tree156fb1d6b5bc23dbb87aedadfc033072f3251f5a
parent8d8c155a610553cf6bbc04ee52fbae0674d3d3fe
[MIPS] Fix justify error for small structures

Fix justify error for small structures bigger than 32 bits in fixed
arguments for MIPS64 big endian. There was a problem when small structures
are passed as fixed arguments. The structures that are bigger than 32 bits
but smaller than 64 bits were not left justified properly on MIPS64 big
endian. This is fixed by shifting the value to make it left justified when
appropriate.

Patch by Aleksandar Beserminji.

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@232382 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/Mips/MipsCallingConv.td
test/CodeGen/Mips/cconv/arguments-small-structures-bigger-than-32bits.ll [new file with mode: 0644]