зеркало из https://github.com/microsoft/clang-1.git
Add inreg attributes to reference arguments.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145189 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Родитель
13dc8f98f6
Коммит
2871020b2d
|
@ -831,7 +831,8 @@ void CodeGenModule::ConstructAttributeList(const CGFunctionInfo &FI,
|
|||
// FALL THROUGH
|
||||
case ABIArgInfo::Direct:
|
||||
if (RegParm > 0 &&
|
||||
(ParamType->isIntegerType() || ParamType->isPointerType())) {
|
||||
(ParamType->isIntegerType() || ParamType->isPointerType() ||
|
||||
ParamType->isReferenceType())) {
|
||||
RegParm -=
|
||||
(Context.getTypeSize(ParamType) + PointerWidth - 1) / PointerWidth;
|
||||
if (RegParm >= 0)
|
||||
|
|
|
@ -0,0 +1,6 @@
|
|||
// RUN: %clang_cc1 -triple i386-unknown-unknown %s -emit-llvm -o - | FileCheck %s
|
||||
|
||||
|
||||
// CHECK: _Z3fooRi(i32* inreg
|
||||
void __attribute__ ((regparm (1))) foo(int &a) {
|
||||
}
|
Загрузка…
Ссылка в новой задаче