Displaying 20 results from an estimated 500 matches similar to: "IntrusiveRefCntPtr vs std::shared_ptr"
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
2016 Oct 19
2
IntrusiveRefCntPtr vs std::shared_ptr
On Wed, Oct 19, 2016 at 9:31 PM, Mehdi Amini via llvm-dev <
llvm-dev at lists.llvm.org> wrote:
>
> On Oct 19, 2016, at 11:14 AM, Bruce Hoult via llvm-dev <
> 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
2012 Sep 21
2
[LLVMdev] Clang API parsing of the destructor
I am using the clang API (version 3.1 - trunk 153913) to compile some very simple code as follows
class MyClass
{
~MyClass() ;
};
MyClass::~MyClass()
{
}
int main()
{
return 0;
}
My problem is that I get the error message: test.cpp:20:10: error: destructor cannot have a return type MyClass::~MyClass()
If someone can point me to the right direction that would be great. It compiles fine if
2012 Sep 21
0
[LLVMdev] Clang API parsing of the destructor
On Fri, Sep 21, 2012 at 12:22 PM, Kamaljit Lall <klall at factset.com> wrote:
> I am using the clang API (version 3.1 - trunk 153913) to compile some
> very simple code as follows****
>
> class MyClass
> {
> ~MyClass() ;
>
> };
>
> MyClass::~MyClass()
> {
>
> }
>
> int main()
> {
> return 0;
> } ****
>
> My problem is that
2013 Oct 03
0
[LLVMdev] libclang JIT frontend
Hi,
I'm not sure if this is a libclang, llvm::cl or clang-interpreter issue so I'll try posting here for a response.
I am using libclang as a frontend to the LLVM JIT (3.3 release). I started from the clang-interpreter example and have everything working (given a C/C++ source file I can have it JIT'd to memory and executed) for a single run. When I try to compile a second source
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
Manuel,
After the discussion at last night, I have agreed that
GetTemporaryDirectory() on Win32 would do bad thing, thank you.
dir = GetTemporaryDirectory();
dir.eraseFromDisk(erase_contents = true);
dir = GetTemporaryDirectory(); /* It doesn't create anything on Win32
due to caching */
I suppose Manuel wants GetTemporaryDirectory() to keep semantics
similar mkdtemp(3).
Though it is in
2012 Jul 10
2
[LLVMdev] Unable to do even basic Clang tutorial
You will need to link to the LLVM/clang libraries. To get the correct
flags, you can run:
./llvm-config --ldflags --libs
and use the flags reported.
On 7/10/2012 11:35 AM, NY Knicks Fan wrote:
> OK. Thanks. I now get the following error (which appears to be a
> problem w/ the tutorial itself?):
>
> $ /home/ubuntu/bin/bin/clang++ -I /home/ubuntu/bin/include/
>
2012 Jul 10
2
[LLVMdev] Unable to do even basic Clang tutorial
You need to link in the libclang* as well.
On 7/10/2012 1:22 PM, NY Knicks Fan wrote:
> Hi Ashok,
>
> $ cd bin/bin
> $ ./llvm-config --ldflags --libs
> -L/home/ubuntu/bin/lib -ldl -lpthread
> -lLLVMAsmParser -lLLVMTableGen -lLLVMDebugInfo -lLLVMX86Disassembler
> -lLLVMX86AsmParser -lLLVMX86CodeGen -lLLVMSelectionDAG -lLLVMAsmPrinter
> -lLLVMX86Desc -lLLVMX86Info
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
When trying to build the 11.0-CURRENT clang 3.5 on powerpc64 I ran into a violation of C++ accessibility rules (for private) that stopped the compile. So not the usual defect category. (This was a bootstrapping procedure as powerpc/powerpc64 FreeBSD world’s clang has an odd status and getting from 3.4 under 10.1-STABLE to 3.5 on 11.0-CURRENT is not automatic.)
Given the language rules and
2012 Jul 10
0
[LLVMdev] Unable to do even basic Clang tutorial
Hi Ashok,
$ cd bin/bin
$ ./llvm-config --ldflags --libs
-L/home/ubuntu/bin/lib -ldl -lpthread
-lLLVMAsmParser -lLLVMTableGen -lLLVMDebugInfo -lLLVMX86Disassembler -lLLVMX86AsmParser -lLLVMX86CodeGen -lLLVMSelectionDAG -lLLVMAsmPrinter -lLLVMX86Desc -lLLVMX86Info -lLLVMX86AsmPrinter -lLLVMX86Utils -lLLVMJIT -lLLVMMCDisassembler -lLLVMMCParser -lLLVMInstrumentation -lLLVMInterpreter
2012 Jul 10
0
[LLVMdev] Unable to do even basic Clang tutorial
OK. Thanks. I now get the following error (which appears to be a problem w/ the tutorial itself?):
$ /home/ubuntu/bin/bin/clang++ -I /home/ubuntu/bin/include/ -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS tutorial1.cpp/tmp/tutorial1-LQ71fW.o: In function `main':
tutorial1.cpp:(.text+0x42): undefined reference to `llvm::outs()'
tutorial1.cpp:(.text+0x72): undefined reference to
2012 Jul 10
3
[LLVMdev] Unable to do even basic Clang tutorial
Add -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS to your compilation flag.
On 7/10/2012 11:23 AM, NY Knicks Fan wrote:
> Hi Ashok,
>
> I created a new Ubuntu 12.04 virtual machine and followed directions
> except that I know use your cmake command instead of configure, and I
> got the error below.
>
> Any help is very much appreciated.
>
>
> $
2011 Dec 16
0
[LLVMdev] LLVM+Clang as a shared library
Hi,
I have downloaded version 3.0 of LLVM and Clang and built them as shared
libraries (on Windows, Linux and Mac OS X) using the following steps:
cd <WHERE-llvm-3.0.tar.gz-IS>
tar xvzf llvm-3.0.tar.gz
cd llvm-3.0.src/tools
tar xvzf ../../clang-3.0.tar.gz
mv clang-3.0.src clang
cd ../..
mkdir build
cd build
../llvm-3.0.src/configure --disable-docs --enable-shared
2020 Oct 01
2
OrcV1 removal
Hi,
On 2020-10-01 15:29:12 -0700, Lang Hames wrote:
> 24bytes / object -- Looks like I managed module ownership correctly but
> leaked the ThreadSafeModule container. This should be fixed in 5044196b412f.
That helped a bit, but not yet fully. Looks like it might be still
reachable memory, so leakcheck isn't that helpful.
Oooh. I think I see. For various reasons the symbol names we
2020 Jun 21
8
Inclusive language in LLVM: can we rename `job` in source code?
<div> </div><div>Yes, broad. But what guys say: "You LLVM developers are all racists, because you use 'master' word"</div><div>Or broader: "You all developers are all racists, because you use 'master' word". We are not racists, but other guys think so.</div><div>So let's begin consistent and take into account all
2020 Jun 21
4
Inclusive language in LLVM: can we rename `job` in source code?
<div>Here we've began discussion about "master"</div><div><a href="https://lists.llvm.org/pipermail/llvm-dev/2020-June/142448.html">https://lists.llvm.org/pipermail/llvm-dev/2020-June/142448.html</a></div><div> </div><div>Lets remove Job word completely</div><div><pre>But as one can easily fact-check,
2012 Jun 26
1
[LLVMdev] Error compiling llvm/clang with clang+libc++ with -std=cxx0x
Thanks 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:
2008 Nov 19
1
[LLVMdev] Why is "typedef boost::shared_ptr<MyClass> MyClass_ptr" named "struct.boost::MyClass_ptr" by llvm-g++?
Hi,
In the code below, MyNamespace::MyClass_ptr will be named
"struct.boost::MyClass_ptr" by llvm-g++, and not
"struct.MyNamespace::MyClass_ptr" as I expected.
I observed this with the real boost::shared_ptr but used the code below
(also attached as structnametest1.cc) on the demo page
(http://llvm.org/demo/index.cgi) to reproduce the behavior.
When I extended my test code
2019 Aug 29
2
enable_shared_from_this fails at runtime when inherited privately
Am 29.08.19 um 12:07 schrieb Jonathan Wakely:
> On Thu, 29 Aug 2019 at 10:15, Christian Schneider
> <cschneider at radiodata.biz> wrote:
>>
>> Hello,
>> I just discovered, that, when using enable_shared_from_this and
>> inheriting it privately, this fails at runtime.
>> I made a small example:
>>
>> #include <memory>
>> #include
2017 Jul 31
2
RTTI with smart pointers
Hi,
I would like to use std::shared_ptr in my pass. However I'm facing a
problem wrt RTTI. If I have a code like:
std::shared_ptr<BaseClass> x(new DerivedClass());
...
std::shared_ptr<DerivedClass> p =
std::dynamic_pointer_cast<DerivedClass>(x);
It does not compile since the default RTTI infrastructure is not used by
LLVM. Also, it's not clear to me if the