search for: dbgvalue

Displaying 18 results from an estimated 18 matches for "dbgvalue".

Did you mean: dbg_value
2018 Apr 30
1
[SelectionDAG] DbgValue nodes aren't transferred
> On Apr 30, 2018, at 3:16 PM, Se Jong Oh <sejooh at microsoft.com> wrote: > > For cast instructions, llvm::salvageDebugInfo() simply makes dbg.value point to the source of the cast. Since SelectionDAG already has transferDbgValues which can move dbgvalue to the cast source, I think that we can just call it where the truncate is optimized away. That sounds reasonable, yes. Casts are effectively transparent for debug info purposes. -- adrian > > Thanks, > Sejong > > From: aprantl at apple.com <mailto:...
2018 Apr 30
0
[SelectionDAG] DbgValue nodes aren't transferred
For cast instructions, llvm::salvageDebugInfo() simply makes dbg.value point to the source of the cast. Since SelectionDAG already has transferDbgValues which can move dbgvalue to the cast source, I think that we can just call it where the truncate is optimized away. Thanks, Sejong From: aprantl at apple.com <aprantl at apple.com> Sent: Monday, April 30, 2018 2:59 PM To: Se Jong Oh <sejooh at microsoft.com> Cc: jdevlieghere at apple....
2018 Apr 30
2
[SelectionDAG] DbgValue nodes aren't transferred
> On Apr 30, 2018, at 2:57 PM, Se Jong Oh <sejooh at microsoft.com> wrote: > > Thanks! It looks like SelectionDAG::salvageDebugInfo handles only addition with constant. You can look at llvm::salvageDebugInfo() for examples on how to handle other situations. -- adrian -------------- next part -------------- An HTML attachment was scrubbed... URL:
2018 Apr 30
0
[SelectionDAG] DbgValue nodes aren't transferred
...From: aprantl at apple.com <aprantl at apple.com> Sent: Monday, April 30, 2018 1:53 PM To: Se Jong Oh <sejooh at microsoft.com> Cc: jdevlieghere at apple.com; Vedant Kumar <vsk at apple.com>; llvm-dev at lists.llvm.org; pidgeot18 at gmail.com Subject: Re: [llvm-dev] [SelectionDAG] DbgValue nodes aren't transferred On Apr 30, 2018, at 1:49 PM, Se Jong Oh <sejooh at microsoft.com<mailto:sejooh at microsoft.com>> wrote: Hi Jonas, I have another case that DBG_VALUE is not produced. I would appreciate it if you could take a quick look at the testcase below. test co...
2016 May 29
1
How to find variable names from LLVM IR?
...) { if (const DbgDeclareInst* DbgDeclare = dyn_cast<DbgDeclareInst>(&*Iter)) { if (DbgDeclare->getAddress() == V) Var = DbgDeclare->getVariable(); } else if (const DbgValueInst* DbgValue = dyn_cast<DbgValueInst>(&*Iter)) { if (DbgValue->getValue() == V) Var = DbgValue->getVariable(); } } name = Var->getName(); } errs() &...
2018 Mar 14
2
[SelectionDAG] DbgValue nodes aren't transferred
Hi Jonas, Thanks for taking a look! It makes linear-dbg-value.ll pass for my target by producing DEBUG_VALUEs correctly. I also tried a simple function with few operations and confirmed DEBUG_VALUEs which are not produced without trasferDbgValues in SetPromotedInteger. Thanks, Sejong From: jdevlieghere at apple.com <jdevlieghere at apple.com> Sent: Wednesday, March 14, 2018 4:07 AM To: Se Jong Oh <sejooh at microsoft.com> Cc: Vedant Kumar <vsk at apple.com>; llvm-dev at lists.llvm.org; Adrian Prantl <aprantl at apple...
2018 Mar 14
0
[SelectionDAG] DbgValue nodes aren't transferred
Hi Sejong, Indeed, I think you are right and we should call transferDbgValues in SetPromotedInteger. I couldn’t immediately find a suitable in-tree test to verify this though. Can you check and let me know whether this works for your target? Thanks, Jonas > On Mar 13, 2018, at 7:45 PM, Se Jong Oh <sejooh at microsoft.com> wrote: > > Thanks for help! I thi...
2018 Apr 30
0
[SelectionDAG] DbgValue nodes aren't transferred
...TargetConstant:i64<0>, t18:1, test.c:5:11 t20: i32,ch,glue = CopyFromReg t19, Register:i32 $w0, t19:1, test.c:5:11 Then, TargetLowering::LowerCallTo adds a truncate node since the function return type is i16. t21: i16 = truncate t20, test.c:5:11 When lowering the dbg.value intrinsic, a SDDbgValue node is attached to the truncate since it is the final result of the call. Lowering the third call constructs any_extend(t21) for the 32-bit register type but optimizes out the truncate node by the following code, and it seems that the DbgValue node on the truncate is also lost. SelectionDAG::ge...
2018 Mar 09
0
[SelectionDAG] DbgValue nodes aren't transferred
...dd node by DAGTypeLegalizer::PromoteIntegerResult and its dbg_value node is not transferred to the new node. t9: i32 = add nsw t5, t8 --> t31: i64 = add t30, t7 ; the dbg_value node is not transferred to the new i64 add node. For expansion, DAGTypeLegalizer::SetExpandedInteger calls transferDbgValues() but I couldn't find any place to call trasnferDbgValues() for integer type promotion in DAGTypeLegalizer ::SetPromotedInteger and other places. I am wondering If I miss anything or the legalization needs to call transferDbgValues() for this case. I found this problem because a recently adde...
2018 Mar 15
1
[SelectionDAG] DbgValue nodes aren't transferred
...<sejooh at microsoft.com> wrote: > > Hi Jonas, > > Thanks for taking a look! It makes linear-dbg-value.ll pass for my target by producing DEBUG_VALUEs correctly. I also tried a simple function with few operations and confirmed DEBUG_VALUEs which are not produced without trasferDbgValues in SetPromotedInteger. That’s great news! Do you plan on creating a patch for this upstream? > > Thanks, > Sejong > > From: jdevlieghere at apple.com <jdevlieghere at apple.com> > Sent: Wednesday, March 14, 2018 4:07 AM > To: Se Jong Oh <sejooh at microsoft.co...
2018 Mar 09
0
[SelectionDAG] DbgValue nodes aren't transferred
+ Adrian, Joshua + Jonas, since he contributed the transferDbgValues change in DAGTypeLegalizer::SetExpandedInteger > On Mar 8, 2018, at 5:44 PM, Se Jong Oh via llvm-dev <llvm-dev at lists.llvm.org> wrote: > > Hi, > > I have a problem that dbg_value nodes are not transferred when integer DAG nodes are promoted. For example, an i32 add node...
2018 Mar 13
2
[SelectionDAG] DbgValue nodes aren't transferred
...<vsk at apple.com> Sent: Friday, March 9, 2018 3:19 PM To: Se Jong Oh <sejooh at microsoft.com> Cc: llvm-dev at lists.llvm.org; Jonas Devlieghere <jdevlieghere at apple.com>; Adrian Prantl <aprantl at apple.com>; pidgeot18 at gmail.com Subject: Re: [llvm-dev] [SelectionDAG] DbgValue nodes aren't transferred + Adrian, Joshua + Jonas, since he contributed the transferDbgValues change in DAGTypeLegalizer::SetExpandedInteger On Mar 8, 2018, at 5:44 PM, Se Jong Oh via llvm-dev <llvm-dev at lists.llvm.org<mailto:llvm-dev at lists.llvm.org>> wrote: Hi, I have a pr...
2018 Apr 30
2
[SelectionDAG] DbgValue nodes aren't transferred
..., test.c:5:11 > t20: i32,ch,glue = CopyFromReg t19, Register:i32 $w0, t19:1, test.c:5:11 > > Then, TargetLowering::LowerCallTo adds a truncate node since the function return type is i16. > > t21: i16 = truncate t20, test.c:5:11 > > When lowering the dbg.value intrinsic, a SDDbgValue node is attached to the truncate since it is the final result of the call. > > Lowering the third call constructs any_extend(t21) for the 32-bit register type but optimizes out the truncate node by the following code, and it seems that the DbgValue node on the truncate is also lost. Withou...
2018 Mar 09
2
[SelectionDAG] DbgValue nodes aren't transferred
...dd node by DAGTypeLegalizer::PromoteIntegerResult and its dbg_value node is not transferred to the new node. t9: i32 = add nsw t5, t8 --> t31: i64 = add t30, t7 ; the dbg_value node is not transferred to the new i64 add node. For expansion, DAGTypeLegalizer::SetExpandedInteger calls transferDbgValues() but I couldn't find any place to call trasnferDbgValues() for integer type promotion in DAGTypeLegalizer ::SetPromotedInteger and other places. I am wondering If I miss anything or the legalization needs to call transferDbgValues() for this case. I found this problem because a recently adde...
2017 Nov 22
2
Retrieving DbgInfoIntrinsics for a given value
Hi LLVM, If I have an llvm value "<16 x float> addrspace(1)* %in", and in the LLVM IR, there is a @llvm.dbg.value like: call void @llvm.dbg.value(metadata <16 x float> addrspace(1)* %in, i64 0, metadata !216, metadata !28), !dbg !217 How I can retrieve this @llvm.dbg.value when I have "%in"? Since Metadata is not a part of the uselist anymore, is there some way
2014 Nov 10
5
[LLVMdev] [RFC] Separating Metadata from the Value hierarchy
> On 2014-Nov-10, at 08:30, Chris Lattner <clattner at apple.com> wrote: > >> On Nov 9, 2014, at 5:02 PM, Duncan P. N. Exon Smith <dexonsmith at apple.com> wrote: >> In response to my recent commits (e.g., [1]) that changed API from >> `MDNode` to `Value`, Eric had a really interesting idea [2] -- split >> metadata entirely from the `Value` hierarchy, and
2011 Apr 15
1
[LLVMdev] Valid debug information being deleted by DAGCombiner
Thanks Devang. Is there any plan on making this implicit in the node creation? Or instead of using DebugLoc in SelectionDAG, use SDDbgValue's instead, or embedding the SDDbgValue in the debug loc itself somehow? This seems like something that shouldn't have to be handled on a case by case basis in the backends. Your thoughts? Thanks, Micah From: Devang Patel [mailto:dpatel at apple.com] Sent: Friday, April 15, 2011 4:20 PM T...
2014 Aug 27
6
[LLVMdev] Minimizing -gmlt
...cope(); DwarfCompileUnit &TheCU = *SPMap.lookup(FnScope->getScopeNode()); + if (TheCU.getCUNode().getEmissionKind() == DIBuilder::LineTablesOnly && LScopes.getAbstractScopesList().empty()) { + assert(ScopeVariables.empty()); + assert(CurrentFnArguments.empty()); + assert(DbgValues.empty()); + assert(AbstractVariables.empty()); + LabelsBeforeInsn.clear(); + LabelsAfterInsn.clear(); + PrevLabel = nullptr; + CurFn = nullptr; + return; + } // Construct abstract scopes. for (LexicalScope *AScope : LScopes.getAbstractScopesList()) { diff --git lib/CodeG...