search for: _z3bazv

Displaying 5 results from an estimated 5 matches for "_z3bazv".

Did you mean: _z3barv
2020 Sep 16
2
[Debuginfo] Changing llvm.dbg.value and DBG_VALUE to support multiple location operands
...ree to emit the register location (DW_OP_reg0 RAX). // Compile with clang -O2 -g int baz(); int bar2(int arg) { return arg * 4; } int bar() { return bar2(1); } int foo() { int a = baz() + bar() - 4; return a * 2; } ; Eventually becomes the IR... %call = call i32 @_Z3bazv(), !dbg !25 %call1 = call i32 @_Z3barv(), !dbg !26 %add = add nsw i32 %call, %call1, !dbg !27 %sub = sub nsw i32 %add, 4, !dbg !28 call void @llvm.dbg.value(metadata i32 %sub, metadata !24, metadata !DIExpression()), !dbg !29 %mul = mul nsw i32 %sub, 2, !dbg !30 ret i32 %mul, !dbg !31...
2020 Sep 15
2
[Debuginfo] Changing llvm.dbg.value and DBG_VALUE to support multiple location operands
Hi Adrian & Stephen, One thought here: But — not all memory locations are l-values. If we have a DWARF location list for variable "x" which points to a memory address for the first n instructions and the switches to a constant for the remainder of the scope, the memory address is not guaranteed to be an l-value, because writing the the memory address cannot affect the later part of
2014 Nov 04
10
[LLVMdev] lifetime.start/end clarification
...%.pre-phi = phi i8* [ %.pre, %if.else.label_crit_edge ], [ %0, %if.then ] call void @_Z3barR1X(%struct.X* dereferenceable(33) %x) call void @llvm.lifetime.end(i64 33, i8* %.pre-phi) br label %if.end3 if.else: ; preds = %entry tail call void @_Z3bazv() %cmp1 = icmp eq i32 %i, 0 br i1 %cmp1, label %if.else.label_crit_edge, label %if.end3 if.else.label_crit_edge: ; preds = %if.else %.pre = getelementptr inbounds %struct.X* %x, i64 0, i32 0, i64 0 br label %label if.end3:...
2014 Nov 04
3
[LLVMdev] lifetime.start/end clarification
...%if.then ] > > > > call void @_Z3barR1X(%struct.X* dereferenceable(33) %x) > > > > call void @llvm.lifetime.end(i64 33, i8* %.pre-phi) > > > > br label %if.end3 > > > > > > > > if.else: ; preds = %entry > > > > tail call void @_Z3bazv() > > > > %cmp1 = icmp eq i32 %i, 0 > > > > br i1 %cmp1, label %if.else.label_crit_edge, label %if.end3 > > > > > > > > if.else.label_crit_edge: ; preds = %if.else > > > > %.pre = getelementptr inbounds %struct.X* %x, i64 0, i32 0, i64 0 &...
2014 Nov 05
2
[LLVMdev] lifetime.start/end clarification
...%.pre-phi = phi i8* [ %.pre, %if.else.label_crit_edge ], [ %0, %if.then ] call void @_Z3barR1X(%struct.X* dereferenceable(33) %x) call void @llvm.lifetime.end(i64 33, i8* %.pre-phi) br label %if.end3 if.else: ; preds = %entry tail call void @_Z3bazv() %cmp1 = icmp eq i32 %i, 0 br i1 %cmp1, label %if.else.label_crit_edge, label %if.end3 if.else.label_crit_edge: ; preds = %if.else %.pre = getelementptr inbounds %struct.X* %x, i64 0, i32 0, i64 0 br label %label if.end3:...