aboutsummaryrefslogtreecommitdiff
path: root/lib/Target/PTX/PTXMFInfoExtract.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Target/PTX/PTXMFInfoExtract.cpp')
-rw-r--r--lib/Target/PTX/PTXMFInfoExtract.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/Target/PTX/PTXMFInfoExtract.cpp b/lib/Target/PTX/PTXMFInfoExtract.cpp
index 68b641b89a..b37c740006 100644
--- a/lib/Target/PTX/PTXMFInfoExtract.cpp
+++ b/lib/Target/PTX/PTXMFInfoExtract.cpp
@@ -67,7 +67,9 @@ bool PTXMFInfoExtract::runOnMachineFunction(MachineFunction &MF) {
// FIXME: This is a slow linear scanning
for (unsigned reg = PTX::NoRegister + 1; reg < PTX::NUM_TARGET_REGS; ++reg)
- if (MRI.isPhysRegUsed(reg) && reg != retreg && !MFI->isArgReg(reg))
+ if (MRI.isPhysRegUsed(reg) &&
+ reg != retreg &&
+ (MFI->isKernel() || !MFI->isArgReg(reg)))
MFI->addLocalVarReg(reg);
// Notify MachineFunctionInfo that I've done adding local var reg