[mips] Mark aggregate arguments passed in registers with the inreg attribute
authorDaniel Sanders <daniel.sanders@imgtec.com>
Fri, 24 Oct 2014 15:30:16 +0000 (15:30 +0000)
committerDaniel Sanders <daniel.sanders@imgtec.com>
Fri, 24 Oct 2014 15:30:16 +0000 (15:30 +0000)
commitaa1b35590f8284aee769ba1b239713a75f3ca6f7
treebe91a422034d95e4be3402cb3fdee5b5e2924a3e
parentbe63968a5c30750ccb53f230c935c065c9e87600
[mips] Mark aggregate arguments passed in registers with the inreg attribute

Summary:
This allows us to easily identify them in the backend which in turn allows us
to handle them correctly for big-endian targets (where they must be shifted
into the upper bits of the register).

Depends on D5961

Reviewers: atanasyan

Reviewed By: atanasyan

Subscribers: cfe-commits, theraven

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

llvm-svn: 220566
clang/lib/CodeGen/TargetInfo.cpp
clang/test/CodeGen/mips-byval-arg.c
clang/test/CodeGen/mips-vector-arg.c
clang/test/CodeGen/mips64-class-return.cpp
clang/test/CodeGen/mips64-padding-arg.c