fix building with shared libraries - missing external visibility in Teak target

This commit is contained in:
Adrian Siekierka 2023-03-25 09:12:03 +01:00
parent bda74e1c0e
commit a7c09171cf
3 changed files with 6 additions and 6 deletions

View File

@ -83,7 +83,7 @@ static MCStreamer* createTeakMCStreamer(const Triple &T, MCContext &Context,
} }
// Force static initialization. // Force static initialization.
extern "C" void LLVMInitializeTeakTargetMC() extern "C" LLVM_EXTERNAL_VISIBILITY void LLVMInitializeTeakTargetMC()
{ {
// Register the MC asm info. // Register the MC asm info.
RegisterMCAsmInfoFn X(getTheTeakTarget(), createTeakMCAsmInfo); RegisterMCAsmInfoFn X(getTheTeakTarget(), createTeakMCAsmInfo);
@ -110,4 +110,4 @@ extern "C" void LLVMInitializeTeakTargetMC()
TargetRegistry::RegisterMCCodeEmitter(getTheTeakTarget(), createTeakMCCodeEmitter); TargetRegistry::RegisterMCCodeEmitter(getTheTeakTarget(), createTeakMCCodeEmitter);
TargetRegistry::RegisterELFStreamer(getTheTeakTarget(), createTeakMCStreamer); TargetRegistry::RegisterELFStreamer(getTheTeakTarget(), createTeakMCStreamer);
} }

View File

@ -81,6 +81,6 @@ void TeakAsmPrinter::EmitInstruction(const MachineInstr *MI) {
} }
// Force static initialization. // Force static initialization.
extern "C" void LLVMInitializeTeakAsmPrinter() { extern "C" LLVM_EXTERNAL_VISIBILITY void LLVMInitializeTeakAsmPrinter() {
RegisterAsmPrinter<TeakAsmPrinter> X(getTheTeakTarget()); RegisterAsmPrinter<TeakAsmPrinter> X(getTheTeakTarget());
} }

View File

@ -100,7 +100,7 @@ void TeakPassConfig::addPreEmitPass()
} }
// Force static initialization. // Force static initialization.
extern "C" void LLVMInitializeTeakTarget() extern "C" LLVM_EXTERNAL_VISIBILITY void LLVMInitializeTeakTarget()
{ {
RegisterTargetMachine<TeakTargetMachine> X(getTheTeakTarget()); RegisterTargetMachine<TeakTargetMachine> X(getTheTeakTarget());
} }