search for: hasvaluehandle

Displaying 20 results from an estimated 21 matches for "hasvaluehandle".

2013 Nov 13
3
[LLVMdev] Proposal: release MDNodes for source modules (LTO+debug info)
...erent LLVMContext for the destination module, but it >> didn’t work out since Linker was not designed to work with different >> LLVMContexts for source vs destination. >> 2> removeUnusedMDNodes checks if a MDNode is used in a different way >> (i.e use_empty() && !hasValueHandler()), but it does not remove MDNodes >> that form cycles. >> > > 3) Make the MDNode be owned by the module that uses it? > MDNode is shared among modules so multiple modules can use it, if we specify an owner for a MDNode, that will prevent sharing. Manman -------------- next...
2013 Nov 13
2
[LLVMdev] Proposal: release MDNodes for source modules (LTO+debug info)
...ther options are: 1> Using a different LLVMContext for the destination module, but it didn’t work out since Linker was not designed to work with different LLVMContexts for source vs destination. 2> removeUnusedMDNodes checks if a MDNode is used in a different way (i.e use_empty() && !hasValueHandler()), but it does not remove MDNodes that form cycles. Comments and suggestions are welcome. Thanks, Manman -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20131112/d1714eca/attachment.html>
2013 Nov 13
0
[LLVMdev] Proposal: release MDNodes for source modules (LTO+debug info)
...t for the destination module, but it >>> didn’t work out since Linker was not designed to work with different >>> LLVMContexts for source vs destination. >>> 2> removeUnusedMDNodes checks if a MDNode is used in a different way >>> (i.e use_empty() && !hasValueHandler()), but it does not remove MDNodes >>> that form cycles. >>> >> >> 3) Make the MDNode be owned by the module that uses it? >> > > MDNode is shared among modules so multiple modules can use it, if we > specify an owner for a MDNode, that will prevent sha...
2015 Jan 31
2
[LLVMdev] debug info for llvm::IntrinsicInst ???
...all I->dump() %2 = call float @llvm.powi.f32(float %0, i32 %1) (gdb) (gdb) print *I $12 = {<llvm::Value> = { _vptr$Value = 0x60c67f0 <vtable for llvm::CallInst+16>, VTy = 0x61035c0, UseList = 0x61d3310, NameAndIsUsedByMD = {Value = 0}, SubclassID = 68 'D', HasValueHandle = 0 '\000', SubclassOptionalData = 0 '\000', SubclassData = 0, NumOperands = 3, static MaximumAlignment = 536870912}, OperandList = 0x61b8e80} (gdb)
2009 Sep 16
1
[LLVMdev] [proposal] Extensible IR metadata
...te: >> Devang's work on debug info prompted this, thoughts welcome: >> http://nondot.org/sabre/LLVMNotes/ExtensibleMetadata.txt > > Here is partial initial implementation. > Thoughts ? setHasMetadata probably shouldn't be public, like there's no way to directly set HasValueHandle. I'd make the MDKindId type (or typedef) now so it's obvious what those "unsigned"s mean. Should the metadata name->id map be per-context or global? I think it's unlikely people will be registering these things during compilation, so we can afford the overhead of a lock,...
2013 Nov 13
0
[LLVMdev] Proposal: release MDNodes for source modules (LTO+debug info)
...gt; Using a different LLVMContext for the destination module, but it didn’t > work out since Linker was not designed to work with different LLVMContexts > for source vs destination. > 2> removeUnusedMDNodes checks if a MDNode is used in a different way (i.e > use_empty() && !hasValueHandler()), but it does not remove MDNodes that > form cycles. > 3) Make the MDNode be owned by the module that uses it? -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20131112/22442859/attachment.html>
2013 Nov 13
2
[LLVMdev] Proposal: release MDNodes for source modules (LTO+debug info)
...ns are: > 1> Using a different LLVMContext for the destination module, but it didn’t work out since Linker was not designed to work with different LLVMContexts for source vs destination. > 2> removeUnusedMDNodes checks if a MDNode is used in a different way (i.e use_empty() && !hasValueHandler()), but it does not remove MDNodes that form cycles. > > 3) Make the MDNode be owned by the module that uses it? > > MDNode is shared among modules so multiple modules can use it, if we specify an owner for a MDNode, that will prevent sharing. > > From your stats (40% stuck i...
2015 Jan 31
2
[LLVMdev] debug info for llvm::IntrinsicInst ???
...) > (gdb) > (gdb) print *I > $12 = {<llvm::Value> = { > _vptr$Value = 0x60c67f0 <vtable for llvm::CallInst+16>, VTy = > 0x61035c0, > UseList = 0x61d3310, NameAndIsUsedByMD = {Value = 0}, > SubclassID = 68 'D', > HasValueHandle = 0 '\000', SubclassOptionalData = 0 '\000', > SubclassData = 0, NumOperands = 3, static MaximumAlignment = > 536870912}, > OperandList = 0x61b8e80} > (gdb) > > _______________________________________________ > LLVM Developers maili...
2019 Mar 18
2
[RFC] Making space for a flush-to-zero flag in FastMathFlags
On Sun, Mar 17, 2019 at 1:47 PM Craig Topper <craig.topper at gmail.com> wrote: > Can we move HasValueHandle out of the byte used for SubClassOptionalData and move it to the flags at the bottom of value by shrinking NumUserOperands to 27? I like this approach because it is less work for me. :) But I agree with Sanjay below that this only kicks the can slightly further down the road (solutions (2) and (3...
2015 Jan 31
0
[LLVMdev] debug info for llvm::IntrinsicInst ???
...@llvm.powi.f32(float %0, i32 %1) > (gdb) > (gdb) print *I > $12 = {<llvm::Value> = { > _vptr$Value = 0x60c67f0 <vtable for llvm::CallInst+16>, VTy = > 0x61035c0, > UseList = 0x61d3310, NameAndIsUsedByMD = {Value = 0}, SubclassID = 68 > 'D', > HasValueHandle = 0 '\000', SubclassOptionalData = 0 '\000', > SubclassData = 0, NumOperands = 3, static MaximumAlignment = > 536870912}, > OperandList = 0x61b8e80} > (gdb) > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at...
2019 Mar 16
3
[RFC] Making space for a flush-to-zero flag in FastMathFlags
Hi, I need to add a flush-denormals-to-zero (FTZ) flag to FastMathFlags, but we've already used up the 7 bits available in Value::SubclassOptionalData (the "backing storage" for FPMathOperator::getFastMathFlags()). These are the possibilities I can think of: 1. Increase the size of FPMathOperator. This gives us some additional bits for FTZ and other fastmath flags we'd want
2015 Jan 31
0
[LLVMdev] debug info for llvm::IntrinsicInst ???
...) >> (gdb) >> (gdb) print *I >> $12 = {<llvm::Value> = { >> _vptr$Value = 0x60c67f0 <vtable for llvm::CallInst+16>, VTy = >> 0x61035c0, >> UseList = 0x61d3310, NameAndIsUsedByMD = {Value = 0}, SubclassID = 68 >> 'D', >> HasValueHandle = 0 '\000', SubclassOptionalData = 0 '\000', >> SubclassData = 0, NumOperands = 3, static MaximumAlignment = >> 536870912}, >> OperandList = 0x61b8e80} >> (gdb) >> >> _______________________________________________ >> LLVM Developers m...
2011 Jan 05
0
[LLVMdev] Printing error with Value objects
...om GVN. I perform this dump after GVN has completed its transformations. Is it possible that the Value has been deleted from the program by GVN? Is this expected behaviour? This is the output when I type "print *V1" in gdb: {_vptr.Value = 0x91fa950, SubclassID = 92 '\\', HasValueHandle = 1 '\001', HasMetadata = 0 '\000', SubclassOptionalData = 31 '\037', SubclassData = 43368, VTy = {Ty = 0x921f6fc}, UseList = 0x8d5a550, Name = 0x8e06088} This is the output when I type "print *V1->getType()" in gdb: {<llvm::AbstractTypeUser> = {_...
2012 Apr 21
0
[LLVMdev] Remove function from module
It also occurs on several (different) test cases. I have founded that assershion rises in void ValueHandleBase::ValueIsDeleted(Value *V); Code from function: // All callbacks, weak references, and assertingVHs should be dropped by now. if (V->HasValueHandle) { #ifndef NDEBUG // Only in +Asserts mode... dbgs() << "While deleting: " << *V->getType() << " %" << V->getNameStr() << "\n"; if (pImpl->ValueHandles[V]->getKind() == Assert) llvm_unreachable(&qu...
2009 Sep 16
0
[LLVMdev] [proposal] Extensible IR metadata
On Fri, Sep 11, 2009 at 9:57 AM, Chris Lattner <clattner at apple.com> wrote: > Devang's work on debug info prompted this, thoughts welcome: > http://nondot.org/sabre/LLVMNotes/ExtensibleMetadata.txt Here is partial initial implementation. Thoughts ? - Devang -------------- next part -------------- A non-text attachment was scrubbed... Name: mdn.diff Type: application/octet-stream
2013 Nov 13
0
[LLVMdev] Proposal: release MDNodes for source modules (LTO+debug info)
...ation module, but it >>>> didn’t work out since Linker was not designed to work with different >>>> LLVMContexts for source vs destination. >>>> 2> removeUnusedMDNodes checks if a MDNode is used in a different way >>>> (i.e use_empty() && !hasValueHandler()), but it does not remove MDNodes >>>> that form cycles. >>>> >>> >>> 3) Make the MDNode be owned by the module that uses it? >>> >> >> MDNode is shared among modules so multiple modules can use it, if we >> specify an owner for...
2015 Sep 14
7
RFC: speedups with instruction side-data (ADCE, perhaps others?)
I’ve been playing around with optimizing performance various passes and noticed something about ADCE: it keeps an Alive set that requires a lot of upkeep time-wise, but if each instruction had a /single bit/ of side data (to represent liveness, solely within the pass), the set wouldn’t be needed. I tested this out and observed a ~1/3 reduction in time in ADCE: 1454ms to 982ms according to a
2019 Mar 18
3
[RFC] Making space for a flush-to-zero flag in FastMathFlags
...D48085 https://bugs.llvm.org/show_bug.cgi?id=38086 https://bugs.llvm.org/show_bug.cgi?id=39535 https://reviews.llvm.org/D51701 ...so we need to make FMF changes regardless of FTZ. On Sun, Mar 17, 2019 at 2:47 PM Craig Topper via llvm-dev < llvm-dev at lists.llvm.org> wrote: > Can we move HasValueHandle out of the byte used for SubClassOptionalData > and move it to the flags at the bottom of value by > shrinking NumUserOperands to 27? > > ~Craig > > > On Sat, Mar 16, 2019 at 12:51 PM Sanjoy Das via llvm-dev < > llvm-dev at lists.llvm.org> wrote: > >> Hi, >...
2013 Nov 13
2
[LLVMdev] Proposal: release MDNodes for source modules (LTO+debug info)
...ation module, but it >>>> didn’t work out since Linker was not designed to work with different >>>> LLVMContexts for source vs destination. >>>> 2> removeUnusedMDNodes checks if a MDNode is used in a different way >>>> (i.e use_empty() && !hasValueHandler()), but it does not remove MDNodes >>>> that form cycles. >>>> >>> >>> 3) Make the MDNode be owned by the module that uses it? >>> >> >> MDNode is shared among modules so multiple modules can use it, if we >> specify an owner for...
2012 Apr 21
4
[LLVMdev] Remove function from module
Thanks, but I replaceAllUsesWith() - works well, but I still get bug in eraseFromParent(): While deleting: i32 (%class.B*, i32)* %_ZN1B1xEi An asserting value handle still pointed to this value! UNREACHABLE executed at /Users/neonomaly/LLVM/LLVM/lib/VMCore/Value.cpp:561! Yours sincerely, Kadysev Mikhail 21.04.2012, в 23:45, Nick Lewycky написал(а): > Михаил wrote: >> How correctly