Displaying 4 results from an estimated 4 matches for "clearalltypemaps".
2004 Nov 16
2
[LLVMdev] LLVM and memory leaks
...;getObjects() {
static Objects Objs;
return Objs;
}
4. The Types change, including the vector. As you guessed, I'm not a fan
of this at all: it adds overhead to the normal case. Don't the *Types
maps contain all of the information that you need to do the clearing?
In clearAllTypeMaps (which should become a static method in Type,
allowing you to avoid the friend issues), as a first pass, can't you
loop over FunctionTypes, PointerTypes, etc and build the vector there?
As a general note, you don't need to use '(void)' as arguments in C++,
this is a C thing....
2004 Nov 19
0
[LLVMdev] LLVM and memory leaks
...lass,
> Constant::ClearAllValueMaps().
> 4. The Types change, including the vector. As you guessed, I'm not a fan
> of this at all: it adds overhead to the normal case. Don't the *Types
> maps contain all of the information that you need to do the clearing?
> In clearAllTypeMaps (which should become a static method in Type,
> allowing you to avoid the friend issues), as a first pass, can't you
> loop over FunctionTypes, PointerTypes, etc and build the vector there?
I have redone the implementation of clearAllValueMaps and
clearAllTypeMaps so they are now...
2004 Nov 15
0
[LLVMdev] LLVM and memory leaks
Chris Lattner wrote:
>>It would also solve another problem -- We generate new shader code when
>>the user changes parameters, because the shader will be executed
>>millions of times it makes sense to recompile it with changed constants
>>to get maximum optimization. But if some of these parameters are floats,
>>and there is no way to destroy constants in LLVM we have
2004 Nov 12
2
[LLVMdev] LLVM and memory leaks
On Thu, 11 Nov 2004, Morten Ofstad wrote:
> Well, I already tried that, but the destructors crash because they are
> referencing other things which are being destroyed - Constants are Users
> of each other and there is no easy way to destroy them in the right
> order.
There are ways around this, but it turns into a two-pass operation: loop
over all constants to drop their uses, then