search for: intrusiverefcntptr

Displaying 20 results from an estimated 31 matches for "intrusiverefcntptr".

2015 Mar 15
4
[LLVMdev] FreeBSD's 11.0-CURRENT contrib/llvm/include/llvm/ADT/IntrusiveRefCntPtr.h's IntrusiveRefCntPtr and its use violates C++ privacy rules
...reting them I figured an open discussion area might be the better place to go until/unless someone from llvm agrees with the information. I'm not sure what priority being non-standard has for points other compilers have trouble with for the code. I have looked on the web and Revision 232289 of IntrusiveRefCntPtr.h still has the same code structure for the issue. The problem... FreeBSD 11.0-CURRENT's contrib/llvm/include/llvm/ADT/IntrusiveRefCntPtr.h has... template <typename T> class IntrusiveRefCntPtr { T* Obj; public: ... template <class X> IntrusiveRefCntPtr(Intr...
2016 Oct 19
3
IntrusiveRefCntPtr vs std::shared_ptr
why llvm contains IntrusiveRefCntPtr instead of using only std::shared_ptr? IntrusiveRefCntPtr widely used in llvm and clang source code. Due to better performance? for example in main func of clang frontend: int cc1_main(ArrayRef<const char *> Argv, const char *Argv0, void *MainAddr) { ensureSufficientStack(); std::uniq...
2016 Oct 19
4
IntrusiveRefCntPtr vs std::shared_ptr
On Wed, Oct 19, 2016 at 6:24 PM, Benjamin Kramer via llvm-dev < llvm-dev at lists.llvm.org> wrote: > In terms of performance shared_ptr has a number of disadvantages. One > is that it always uses atomics even though most IntrusiveRefCntPtrs > are used in single-threaded contexts. Another is weak_ptr adding a lot > of complexity to the implementation, IntrusiveRefCntPtr doesn't > support weak references. > > With that it's hard to make a case for changing uses of > IntrusiveRefCntPtr as it's a non-trivial...
2016 Oct 19
2
IntrusiveRefCntPtr vs std::shared_ptr
...llvm-dev at lists.llvm.org> wrote: > > On Wed, Oct 19, 2016 at 6:24 PM, Benjamin Kramer via llvm-dev < > llvm-dev at lists.llvm.org> wrote: > >> In terms of performance shared_ptr has a number of disadvantages. One >> is that it always uses atomics even though most IntrusiveRefCntPtrs >> are used in single-threaded contexts. Another is weak_ptr adding a lot >> of complexity to the implementation, IntrusiveRefCntPtr doesn't >> support weak references. >> >> With that it's hard to make a case for changing uses of >> IntrusiveRefCntPtr a...
2020 Oct 01
2
OrcV1 removal
...std::make_unique<llvm::orc::BasicIRLayerMaterializationUnit, llvm::orc::IRLayer&, llvm::orc::IRSymbolMapper::ManglingOptions const&, llvm::orc::ThreadSafeModule>(llvm::orc::IRLayer&, llvm::o> | | | ->03.53% (97,542B) 0x83B1C7D: llvm::orc::IRLayer::add(llvm::IntrusiveRefCntPtr<llvm::orc::ResourceTracker>, llvm::orc::ThreadSafeModule) (Layer.cpp:28) | | | ->03.53% (97,542B) 0x83BCBF5: llvm::orc::LLJIT::addIRModule(llvm::orc::JITDylib&, llvm::orc::ThreadSafeModule, llvm::IntrusiveRefCntPtr<llvm::orc::ResourceTracker>) (LLJIT.cpp:990)...
2020 Oct 02
2
OrcV1 removal
...IRLayerMaterializationUnit, >> llvm::orc::IRLayer&, llvm::orc::IRSymbolMapper::ManglingOptions const&, >> llvm::orc::ThreadSafeModule>(llvm::orc::IRLayer&, llvm::o> >> | | | ->03.53% (97,542B) 0x83B1C7D: >> llvm::orc::IRLayer::add(llvm::IntrusiveRefCntPtr<llvm::orc::ResourceTracker>, >> llvm::orc::ThreadSafeModule) (Layer.cpp:28) >> | | | ->03.53% (97,542B) 0x83BCBF5: >> llvm::orc::LLJIT::addIRModule(llvm::orc::JITDylib&, >> llvm::orc::ThreadSafeModule, >> llvm::IntrusiveRefCntPtr<llv...
2020 Oct 01
2
OrcV1 removal
Hi, On 2020-09-30 21:31:33 -0700, Lang Hames wrote: > I've taken a first shot at hooking RTDyldObjectLinkingLayer up to the > ResourceTracker API in 7436b2ab2428. Could you let me know whether that > fixes the leak you were seeing? It did improve the situation significantly, thanks! There's still a smaller leak, unfortunately. The function comments for modules say that: /** *
2012 Sep 21
2
[LLVMdev] Clang API parsing of the destructor
...main() { clang::DiagnosticOptions diagnosticOptions; diagnosticOptions.ShowColors=1; diagnosticOptions.ShowOptionNames=1; clang::TextDiagnosticPrinter *pTextDiagnosticPrinter = new clang::TextDiagnosticPrinter( llvm::outs(), diagnosticOptions); llvm::IntrusiveRefCntPtr<clang::DiagnosticIDs> pDiagIDs; clang::DiagnosticsEngine *pDiagnosticsEngine = new clang::DiagnosticsEngine(pDiagIDs, pTextDiagnosticPrinter); clang::LangOptions languageOptions; languageOptions.GNUMode = 1; languageOptions.CXXExceptions = 1; languageOptions.RTTI =...
2012 Jun 26
1
[LLVMdev] Error compiling llvm/clang with clang+libc++ with -std=cxx0x
...Dimitry. That worked. I see some warnings in my compilations: > Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/IntEqClasses.cpp.o > [ 2%] clang-3: warning: argument unused during compilation: '-nostdinc++' > Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/IntrusiveRefCntPtr.cpp.o > clang-3: warning: argument unused during compilation: '-stdlib=libc++' Is that expected? I'm using both -stdlib=libc++ and -std=cxx0x. I dont see them when I used just -stdlib=libc++ flag. Thanks, Ashok On 6/26/2012 1:30 AM, Dimitry Andric wrote: > On 2012-06-26 04:22...
2012 Sep 21
0
[LLVMdev] Clang API parsing of the destructor
...ns diagnosticOptions; > diagnosticOptions.ShowColors=1; > diagnosticOptions.ShowOptionNames=1; > clang::TextDiagnosticPrinter *pTextDiagnosticPrinter = > new clang::TextDiagnosticPrinter( > llvm::outs(), > diagnosticOptions); > llvm::IntrusiveRefCntPtr<clang::DiagnosticIDs> pDiagIDs; > clang::DiagnosticsEngine *pDiagnosticsEngine = > new clang::DiagnosticsEngine(pDiagIDs, pTextDiagnosticPrinter); > > clang::LangOptions languageOptions; > languageOptions.GNUMode = 1; > languageOptions.CXXExceptions =...
2012 May 29
1
[LLVMdev] [cfe-commits] r157260 - in /cfe/trunk: include/clang/Rewrite/Rewriter.h lib/Rewrite/Rewriter.cpp unittests/CMakeLists.txt unittests/Tooling/RewriterTest.cpp unittests/Tooling/RewriterTestContext.h
...for testing and provides >>> > convenience >>> > +/// methods, which help with writing tests that change files. >>> > +class RewriterTestContext { >>> > + public: >>> > +  RewriterTestContext() >>> > +      : Diagnostics(llvm::IntrusiveRefCntPtr<DiagnosticIDs>()), >>> > +        DiagnosticPrinter(llvm::outs(), DiagnosticOptions()), >>> > +        Files((FileSystemOptions())), >>> > +        Sources(Diagnostics, Files), >>> > +        Rewrite(Sources, Options) { >>> > +    Di...
2013 Oct 03
0
[LLVMdev] libclang JIT frontend
...} //int main(int argc, const char **argv, char * const *envp) { int interpretFile (int argc, const char *argv, char * const *envp) { void *MainAddr = (void*) (intptr_t) GetExecutablePath; // llvm::sys::Path Path = GetExecutablePath(argv[0]); llvm::sys::Path Path = GetExecutablePath(argv); IntrusiveRefCntPtr<DiagnosticOptions> DiagOpts = new DiagnosticOptions(); TextDiagnosticPrinter *DiagClient = new TextDiagnosticPrinter(llvm::errs(), &*DiagOpts); IntrusiveRefCntPtr<DiagnosticIDs> DiagID(new DiagnosticIDs()); DiagnosticsEngine Diags(DiagID, &*DiagOpts, DiagClient); Dr...
2011 Dec 16
0
[LLVMdev] LLVM+Clang as a shared library
...k/examples/clang-interpreter/), I get linking errors. For example, undefined references to clang::TextDiagnosticPrinter::TextDiagnosticPrinter(llvm::raw_ostream&, clang::DiagnosticOptions const&, bool), clang::DiagnosticIDs::DiagnosticIDs(),clang::DiagnosticsEngine::DiagnosticsE ngine(llvm::IntrusiveRefCntPtr<clang::DiagnosticIDs> const&, clang::DiagnosticConsumer*, bool), etc. What I don't understand is that both LLVM and Clang are built together, yet only LLVM works for me. Otherwise, yes, I have made sure that my Qt-based application is built with Clang in mind. In fact, I have done ex...
2012 Jun 26
0
[LLVMdev] Error compiling llvm/clang with clang+libc++ with -std=cxx0x
On 2012-06-26 04:22, Ashok Nalkund wrote: ... >> /local/mnt/workspace/ashoknn/519_libcxx_transition/llvm/src/tools/bugpoint/ToolRunner.cpp:131:12: error: invalid operands to binary expression ('llvm::raw_ostream' and 'std::ostringstream' >> (aka 'basic_ostringstream<char>')) >> errs() << OS; >> ~~~~~~ ^ ~~ > Hi Ashok,
2012 Jun 26
2
[LLVMdev] Error compiling llvm/clang with clang+libc++ with -std=cxx0x
Hi All, I'm using LLVM/Clang 3.1 release. I first compiled llvm/clang using GCC per the instructions on the web with cmake. I then compiled libc++ per the instructions on the web. I then tried to compile llvm/clang with previously compiled clang and libc++ using "-std=c++0x -stdlib=libc++" flags. But the compilation fails at: > [ 58%] Building CXX object
2012 Jul 10
0
[LLVMdev] Unable to do even basic Clang tutorial
...to `llvm::outs()' tutorial1.cpp:(.text+0x72): undefined reference to `clang::TextDiagnosticPrinter::TextDiagnosticPrinter(llvm::raw_ostream&, clang::DiagnosticOptions const&, bool)' tutorial1.cpp:(.text+0xd7): undefined reference to `clang::DiagnosticsEngine::DiagnosticsEngine(llvm::IntrusiveRefCntPtr<clang::DiagnosticIDs> const&, clang::DiagnosticConsumer*, bool)' tutorial1.cpp:(.text+0xf4): undefined reference to `clang::LangOptions::LangOptions()' tutorial1.cpp:(.text+0x125): undefined reference to `clang::FileManager::FileManager(clang::FileSystemOptions const&)' tu...
2012 Jul 10
2
[LLVMdev] Unable to do even basic Clang tutorial
...; tutorial1.cpp:(.text+0x72): undefined reference to > `clang::TextDiagnosticPrinter::TextDiagnosticPrinter(llvm::raw_ostream&, > clang::DiagnosticOptions const&, bool)' > tutorial1.cpp:(.text+0xd7): undefined reference to > `clang::DiagnosticsEngine::DiagnosticsEngine(llvm::IntrusiveRefCntPtr<clang::DiagnosticIDs> > const&, clang::DiagnosticConsumer*, bool)' > tutorial1.cpp:(.text+0xf4): undefined reference to > `clang::LangOptions::LangOptions()' > tutorial1.cpp:(.text+0x125): undefined reference to > `clang::FileManager::FileManager(clang::FileSystemOp...
2012 Jul 10
2
[LLVMdev] Unable to do even basic Clang tutorial
...; tutorial1.cpp:(.text+0x72): undefined reference to > `clang::TextDiagnosticPrinter::TextDiagnosticPrinter(llvm::raw_ostream&, > clang::DiagnosticOptions const&, bool)' > tutorial1.cpp:(.text+0xd7): undefined reference to > `clang::DiagnosticsEngine::DiagnosticsEngine(llvm::IntrusiveRefCntPtr<clang::DiagnosticIDs> > const&, clang::DiagnosticConsumer*, bool)' > tutorial1.cpp:(.text+0xf4): undefined reference to > `clang::LangOptions::LangOptions()' > tutorial1.cpp:(.text+0x125): undefined reference to > `clang::FileManager::FileManager(clang::FileSystemOp...
2017 Jun 28
2
Building llvm with clang and lld on arm and the llvm arm backend relocation on position independent code
...ction clang::ento::CXXDestructorCall* clang::ento::CallEventManager::create<clang::ento::CXXDestructorCall, clang::CXXDestructorDecl const*, clang::Stmt const*, clang::ento::MemRegion const*, bool>(clang::CXXDestructorDecl const*, clang::Stmt const*, clang::ento::MemRegion const*, bool, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>, clang::LocationContext const*)): relocation R_ARM_CALL out of range /home/yawmoo/Desktop/clfs/llvm-cross-tools-lld/bin/ld.lld: error: /home/yawmoo/Desktop/clfs/sources/llvm/lib/Analysis/ObjCARCAliasAnalysis.cpp:(function llvm::Pass* llvm::callDefaultCtor<l...
2017 Jun 28
3
Building llvm with clang and lld on arm and the llvm arm backend relocation on position independent code
...ction clang::ento::CXXDestructorCall* clang::ento::CallEventManager::create<clang::ento::CXXDestructorCall, clang::CXXDestructorDecl const*, clang::Stmt const*, clang::ento::MemRegion const*, bool>(clang::CXXDestructorDecl const*, clang::Stmt const*, clang::ento::MemRegion const*, bool, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>, clang::LocationContext const*)): relocation R_ARM_CALL out of range >> /home/yawmoo/Desktop/clfs/llvm-cross-tools-lld/bin/ld.lld: error: /home/yawmoo/Desktop/clfs/sources/llvm/lib/Analysis/ObjCARCAliasAnalysis.cpp:(function llvm::Pass* llvm::callDefault...