From 04de315694d441de4dbdf52b3ff41b2fe6803646 Mon Sep 17 00:00:00 2001 From: Bob Wilson Date: Tue, 25 Dec 2012 00:07:12 +0000 Subject: [PATCH] Rename LLVMContext diagnostic handler types and functions. These are now generally used for all diagnostics from the backend, not just for inline assembly, so this drops the "InlineAsm" from the names. No functional change. (I've left aliases for the old names but only for long enough to let me switch over clang to use the new ones.) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171047 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/LLVMContext.h | 40 ++++++++++++------- .../AsmPrinter/AsmPrinterInlineAsm.cpp | 10 ++--- lib/VMCore/LLVMContext.cpp | 34 ++++++++-------- lib/VMCore/LLVMContextImpl.cpp | 4 +- lib/VMCore/LLVMContextImpl.h | 4 +- 5 files changed, 51 insertions(+), 41 deletions(-) diff --git a/include/llvm/LLVMContext.h b/include/llvm/LLVMContext.h index a5a26946b77..58fb39f0564 100644 --- a/include/llvm/LLVMContext.h +++ b/include/llvm/LLVMContext.h @@ -58,27 +58,39 @@ public: void getMDKindNames(SmallVectorImpl &Result) const; - typedef void (*InlineAsmDiagHandlerTy)(const SMDiagnostic&, void *Context, - unsigned LocCookie); + typedef void (*DiagHandlerTy)(const SMDiagnostic&, void *Context, + unsigned LocCookie); - /// setInlineAsmDiagnosticHandler - This method sets a handler that is invoked - /// when problems with inline asm are detected by the backend. The first - /// argument is a function pointer and the second is a context pointer that - /// gets passed into the DiagHandler. + /// setDiagnosticHandler - This method sets a handler that is invoked + /// when problems are detected by the backend. The first argument is a + /// function pointer and the second is a context pointer that gets passed + /// into the DiagHandler. /// /// LLVMContext doesn't take ownership or interpret either of these /// pointers. - void setInlineAsmDiagnosticHandler(InlineAsmDiagHandlerTy DiagHandler, - void *DiagContext = 0); + void setDiagnosticHandler(DiagHandlerTy DiagHandler, void *DiagContext = 0); - /// getInlineAsmDiagnosticHandler - Return the diagnostic handler set by - /// setInlineAsmDiagnosticHandler. - InlineAsmDiagHandlerTy getInlineAsmDiagnosticHandler() const; + /// getDiagnosticHandler - Return the diagnostic handler set by + /// setDiagnosticHandler. + DiagHandlerTy getDiagnosticHandler() const; - /// getInlineAsmDiagnosticContext - Return the diagnostic context set by - /// setInlineAsmDiagnosticHandler. - void *getInlineAsmDiagnosticContext() const; + /// getDiagnosticContext - Return the diagnostic context set by + /// setDiagnosticHandler. + void *getDiagnosticContext() const; + /// FIXME: Temporary copies of the old names; to be removed as soon as + /// clang switches to the new ones. + typedef DiagHandlerTy InlineAsmDiagHandlerTy; + void setInlineAsmDiagnosticHandler(InlineAsmDiagHandlerTy DiagHandler, + void *DiagContext = 0) { + setDiagnosticHandler(DiagHandler, DiagContext); + } + InlineAsmDiagHandlerTy getInlineAsmDiagnosticHandler() const { + return getDiagnosticHandler(); + } + void *getInlineAsmDiagnosticContext() const { + return getDiagnosticContext(); + } /// emitError - Emit an error message to the currently installed error handler /// with optional location information. This function returns, so code should diff --git a/lib/CodeGen/AsmPrinter/AsmPrinterInlineAsm.cpp b/lib/CodeGen/AsmPrinter/AsmPrinterInlineAsm.cpp index 10a56af5d32..6a21efe1f25 100644 --- a/lib/CodeGen/AsmPrinter/AsmPrinterInlineAsm.cpp +++ b/lib/CodeGen/AsmPrinter/AsmPrinterInlineAsm.cpp @@ -38,7 +38,7 @@ using namespace llvm; namespace { struct SrcMgrDiagInfo { const MDNode *LocInfo; - LLVMContext::InlineAsmDiagHandlerTy DiagHandler; + LLVMContext::DiagHandlerTy DiagHandler; void *DiagContext; }; } @@ -88,15 +88,15 @@ void AsmPrinter::EmitInlineAsm(StringRef Str, const MDNode *LocMDNode, SourceMgr SrcMgr; SrcMgrDiagInfo DiagInfo; - // If the current LLVMContext has an inline asm handler, set it in SourceMgr. + // If the current LLVMContext has a diagnostic handler, set it in SourceMgr. LLVMContext &LLVMCtx = MMI->getModule()->getContext(); bool HasDiagHandler = false; - if (LLVMCtx.getInlineAsmDiagnosticHandler() != 0) { + if (LLVMCtx.getDiagnosticHandler() != 0) { // If the source manager has an issue, we arrange for srcMgrDiagHandler // to be invoked, getting DiagInfo passed into it. DiagInfo.LocInfo = LocMDNode; - DiagInfo.DiagHandler = LLVMCtx.getInlineAsmDiagnosticHandler(); - DiagInfo.DiagContext = LLVMCtx.getInlineAsmDiagnosticContext(); + DiagInfo.DiagHandler = LLVMCtx.getDiagnosticHandler(); + DiagInfo.DiagContext = LLVMCtx.getDiagnosticContext(); SrcMgr.setDiagHandler(srcMgrDiagHandler, &DiagInfo); HasDiagHandler = true; } diff --git a/lib/VMCore/LLVMContext.cpp b/lib/VMCore/LLVMContext.cpp index bdb1b4ba2ee..c09c2e57adb 100644 --- a/lib/VMCore/LLVMContext.cpp +++ b/lib/VMCore/LLVMContext.cpp @@ -73,24 +73,22 @@ void LLVMContext::removeModule(Module *M) { // Recoverable Backend Errors //===----------------------------------------------------------------------===// -void LLVMContext:: -setInlineAsmDiagnosticHandler(InlineAsmDiagHandlerTy DiagHandler, - void *DiagContext) { - pImpl->InlineAsmDiagHandler = DiagHandler; - pImpl->InlineAsmDiagContext = DiagContext; +void LLVMContext::setDiagnosticHandler(DiagHandlerTy DiagHandler, + void *DiagContext) { + pImpl->DiagHandler = DiagHandler; + pImpl->DiagContext = DiagContext; } -/// getInlineAsmDiagnosticHandler - Return the diagnostic handler set by -/// setInlineAsmDiagnosticHandler. -LLVMContext::InlineAsmDiagHandlerTy -LLVMContext::getInlineAsmDiagnosticHandler() const { - return pImpl->InlineAsmDiagHandler; +/// getDiagnosticHandler - Return the diagnostic handler set by +/// setDiagnosticHandler. +LLVMContext::DiagHandlerTy LLVMContext::getDiagnosticHandler() const { + return pImpl->DiagHandler; } -/// getInlineAsmDiagnosticContext - Return the diagnostic context set by -/// setInlineAsmDiagnosticHandler. -void *LLVMContext::getInlineAsmDiagnosticContext() const { - return pImpl->InlineAsmDiagContext; +/// getDiagnosticContext - Return the diagnostic context set by +/// setDiagnosticHandler. +void *LLVMContext::getDiagnosticContext() const { + return pImpl->DiagContext; } void LLVMContext::emitError(const Twine &ErrorStr) { @@ -123,7 +121,7 @@ void LLVMContext::emitWarning(const Instruction *I, const Twine &ErrorStr) { void LLVMContext::emitError(unsigned LocCookie, const Twine &ErrorStr) { // If there is no error handler installed, just print the error and exit. - if (pImpl->InlineAsmDiagHandler == 0) { + if (pImpl->DiagHandler == 0) { errs() << "error: " << ErrorStr << "\n"; exit(1); } @@ -131,12 +129,12 @@ void LLVMContext::emitError(unsigned LocCookie, const Twine &ErrorStr) { // If we do have an error handler, we can report the error and keep going. SMDiagnostic Diag("", SourceMgr::DK_Error, ErrorStr.str()); - pImpl->InlineAsmDiagHandler(Diag, pImpl->InlineAsmDiagContext, LocCookie); + pImpl->DiagHandler(Diag, pImpl->DiagContext, LocCookie); } void LLVMContext::emitWarning(unsigned LocCookie, const Twine &ErrorStr) { // If there is no handler installed, just print the warning. - if (pImpl->InlineAsmDiagHandler == 0) { + if (pImpl->DiagHandler == 0) { errs() << "warning: " << ErrorStr << "\n"; return; } @@ -144,7 +142,7 @@ void LLVMContext::emitWarning(unsigned LocCookie, const Twine &ErrorStr) { // If we do have a handler, we can report the warning. SMDiagnostic Diag("", SourceMgr::DK_Warning, ErrorStr.str()); - pImpl->InlineAsmDiagHandler(Diag, pImpl->InlineAsmDiagContext, LocCookie); + pImpl->DiagHandler(Diag, pImpl->DiagContext, LocCookie); } //===----------------------------------------------------------------------===// diff --git a/lib/VMCore/LLVMContextImpl.cpp b/lib/VMCore/LLVMContextImpl.cpp index 585ec2c3486..61fb7f37d49 100644 --- a/lib/VMCore/LLVMContextImpl.cpp +++ b/lib/VMCore/LLVMContextImpl.cpp @@ -35,8 +35,8 @@ LLVMContextImpl::LLVMContextImpl(LLVMContext &C) Int16Ty(C, 16), Int32Ty(C, 32), Int64Ty(C, 64) { - InlineAsmDiagHandler = 0; - InlineAsmDiagContext = 0; + DiagHandler = 0; + DiagContext = 0; NamedStructTypesUniqueID = 0; } diff --git a/lib/VMCore/LLVMContextImpl.h b/lib/VMCore/LLVMContextImpl.h index 7ff012034c7..c3adf39fc7e 100644 --- a/lib/VMCore/LLVMContextImpl.h +++ b/lib/VMCore/LLVMContextImpl.h @@ -236,8 +236,8 @@ public: /// will be automatically deleted if this context is deleted. SmallPtrSet OwnedModules; - LLVMContext::InlineAsmDiagHandlerTy InlineAsmDiagHandler; - void *InlineAsmDiagContext; + LLVMContext::DiagHandlerTy DiagHandler; + void *DiagContext; typedef DenseMap IntMapTy; -- 2.34.1