Don't asume that a static function in an extern "C" block will not be mangled.

Since functions with internal linkage don't have language linkage, it is valid
to overload them:

extern "C" {
       static int foo();
       static int foo(int);
}

So we mangle them.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175120 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Rafael Espindola 2013-02-14 01:58:08 +00:00
parent c0c2816fb3
commit 382a5530ec

View File

@ -292,7 +292,7 @@ void PPC64CompilationCallback() {
#endif
extern "C" {
static void* LLVM_ATTRIBUTE_USED PPCCompilationCallbackC(unsigned *StubCallAddrPlus4,
void* LLVM_ATTRIBUTE_USED PPCCompilationCallbackC(unsigned *StubCallAddrPlus4,
unsigned *OrigCallAddrPlus4,
bool is64Bit) {
// Adjust the pointer to the address of the call instruction in the stub