aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnton Korobeynikov <asl@math.spbu.ru>2012-11-26 18:59:10 +0000
committerAnton Korobeynikov <asl@math.spbu.ru>2012-11-26 18:59:10 +0000
commitf419a856b56354781141a2a37f6190918be548ed (patch)
tree640850b10d27784a8a5d60034ec9634e8e3bcffa
parent79b7cc59658ca477cd943561d2d30cdfe9e09a5a (diff)
MSPGCC renamed ISR vectors from vector_<address> to __isr_<number>. This patch makes Clang reflect this scheme.
Patch by Job Noorman! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168598 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/CodeGen/TargetInfo.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/CodeGen/TargetInfo.cpp b/lib/CodeGen/TargetInfo.cpp
index 1814e1f28a..4cff08125a 100644
--- a/lib/CodeGen/TargetInfo.cpp
+++ b/lib/CodeGen/TargetInfo.cpp
@@ -3789,9 +3789,9 @@ void MSP430TargetCodeGenInfo::SetTargetAttributes(const Decl *D,
F->addFnAttr(llvm::Attributes::NoInline);
// Step 3: Emit ISR vector alias.
- unsigned Num = attr->getNumber() + 0xffe0;
+ unsigned Num = attr->getNumber() / 2;
new llvm::GlobalAlias(GV->getType(), llvm::Function::ExternalLinkage,
- "vector_" + Twine::utohexstr(Num),
+ "__isr_" + Twine(Num),
GV, &M.getModule());
}
}