Displaying 20 results from an estimated 76 matches for "badref".
2011 May 09
2
[LLVMdev] <badref> showed up when duplicating a list of dependent instructions
...*CloneI << "\n";
pb->getInstList().insertAfter(pi, CloneI); // Inserts newInst after
pi in pb
// adjust pi: point to the newly inserted inst:
pi = CurI;
}//end of for loop on p
However, I got the following errors:
--- Insert New (cloned) Instructions: ...
<badref> = load i32* @strstart, align 4
<badref> = add i32<badref>, 2
<badref> = load i32* @ins_h, align 4
<badref> = getelementptr inbounds [65536 x i8]* @window, i32 0, i32<badref>
<badref> = shl i32<badref>, 5
<badref> = load i8*<...
2011 May 09
0
[LLVMdev] <badref> showed up when duplicating a list of dependent instructions
...t;getInstList().insertAfter(pi, CloneI); // Inserts newInst after pi in pb
>
> // adjust pi: point to the newly inserted inst:
> pi = CurI;
>
> }//end of for loop on p
>
>
> However, I got the following errors:
>
> --- Insert New (cloned) Instructions: ...
> <badref> = load i32* @strstart, align 4
> <badref> = add i32<badref>, 2
> <badref> = load i32* @ins_h, align 4
> <badref> = getelementptr inbounds [65536 x i8]* @window, i32 0, i32<badref>
> <badref> = shl i32<badref>, 5
> <...
2013 Dec 04
2
[LLVMdev] DwarfDebug problems
...}
}
}
errs() << " (" << node << " ) node => " << *node << "\n";
}
Strangely, the node my code finds *prints* the same, but the pointer is different:
> scopeNode(0x7fe53dc6c2c0) => !{i32 786478, metadata <badref>, metadata <badref>, metadata !"grappa_wide_get_pointer", metadata !"grappa_wide_get_pointer", metadata !"", i32 53, metadata <badref>, i1 false, i1 true, i32 0, i32 0, null, i32 256, i1 true, i8* (i8*)* @grappa_wide_get_pointer, null, null, metadata <...
2012 Nov 02
4
[LLVMdev] Instruction does not dominate all uses! <badref> ??
...;Instruction does not
dominate all uses!" means. I'm trying to construct a call to a function
with two parameters. The printed IR, with error, looks like this:
define i32 @add(i32, i32) {
EntryBlock:
%2 = add i32 %0, %1
ret i32 %2
}
define i32 @eval_expr() {
EntryBlock:
ret i32 <badref>
}
Instruction does not dominate all uses!
<badref> = call i32 @add(i32 2, i32 3)
ret i32 <badref>
And the approximate/simplified code I'm using to generate the call,
which would appear at <badref> is:
llvm::Value * func = module->getFunction( "add" );...
2013 Dec 04
2
[LLVMdev] DwarfDebug problems
...(" << node << " ) node => " << *node << "\n";
>> }
>>
>> Strangely, the node my code finds *prints* the same, but the pointer is
>> different:
>>
>> scopeNode(0x7fe53dc6c2c0) => !{i32 786478, metadata <badref>, metadata
>> <badref>, metadata !"grappa_wide_get_pointer", metadata
>> !"grappa_wide_get_pointer", metadata !"", i32 53, metadata <badref>, i1
>> false, i1 true, i32 0, i32 0, null, i32 256, i1 true, i8* (i8*)*
>> @grappa_wide_g...
2013 Dec 04
0
[LLVMdev] DwarfDebug problems
...errs() << " (" << node << " ) node => " << *node << "\n";
> }
>
> Strangely, the node my code finds *prints* the same, but the pointer is
> different:
>
> scopeNode(0x7fe53dc6c2c0) => !{i32 786478, metadata <badref>, metadata
> <badref>, metadata !"grappa_wide_get_pointer", metadata
> !"grappa_wide_get_pointer", metadata !"", i32 53, metadata <badref>, i1
> false, i1 true, i32 0, i32 0, null, i32 256, i1 true, i8* (i8*)*
> @grappa_wide_get_pointer, null...
2013 Dec 04
2
[LLVMdev] DwarfDebug problems
...0x00000001033015c3 main + 7283
> 23 libdyld.dylib 0x00007fff8e68d5fd start + 1
(note the line number of the assertion is probably different because I’ve added some prints to help me debug this)
When I print the MDNode returned by “FnScope->getScopeNode()”, I get lots of <badref>’s:
> !{i32 786478, metadata <badref>, metadata <badref>, metadata !"grappa_wide_get_pointer", metadata !"grappa_wide_get_pointer", metadata !"", i32 53, metadata <badref>, i1 false, i1 true, i32 0, i32 0, null, i32 256, i1 true, i8* (i8*)* @gr...
2012 Nov 02
0
[LLVMdev] Instruction does not dominate all uses! <badref> ??
...'m trying to construct a call to a function
> with two parameters. The printed IR, with error, looks like this:
>
> define i32 @add(i32, i32) {
> EntryBlock:
> %2 = add i32 %0, %1
> ret i32 %2
> }
>
> define i32 @eval_expr() {
> EntryBlock:
> ret i32<badref>
> }
>
> Instruction does not dominate all uses!
> <badref> = call i32 @add(i32 2, i32 3)
> ret i32<badref>
It's correct but not entirely helpful. You've got an instruction in
function @eval_expr whose operand is an instruction in an entirely
differen...
2013 Dec 04
0
[LLVMdev] DwarfDebug problems
...t;< " ) node => " << *node << "\n";
>>> }
>>>
>>> Strangely, the node my code finds *prints* the same, but the pointer is
>>> different:
>>>
>>> scopeNode(0x7fe53dc6c2c0) => !{i32 786478, metadata <badref>, metadata
>>> <badref>, metadata !"grappa_wide_get_pointer", metadata
>>> !"grappa_wide_get_pointer", metadata !"", i32 53, metadata <badref>, i1
>>> false, i1 true, i32 0, i32 0, null, i32 256, i1 true, i8* (i8*)*
>>>...
2013 Dec 04
0
[LLVMdev] DwarfDebug problems
...c3 main + 7283
>> 23 libdyld.dylib 0x00007fff8e68d5fd start + 1
>
> (note the line number of the assertion is probably different because I’ve added some prints to help me debug this)
>
> When I print the MDNode returned by “FnScope->getScopeNode()”, I get lots of <badref>’s:
The badrefs are a red herring, so far as I know - they're printed that
way even when they're valid references, in my experience.
That being said, given your assertion it does look like /something/ is up.
It appears as if the function being emitted is somehow not visited
when emitt...
2012 Aug 17
1
[LLVMdev] Debug information causing assertion
We have a test case where we are hitting an assertion in the X86 code generator. The assertion is: "Assertion failed: TheCU && "Unable to find compile unit!", file .\..\..\..\lib\CodeGen\AsmPrinter\DwarfDebug.cpp, line 1411"
The bitcode is attached.
What I am trying to figure out is what is malformed about our debug that is causing this error? This is reproducible
2009 Aug 11
1
[LLVMdev] globals, modules and badref.
While adapting my JIT compiler to ToT coming from 2.5, I found this:
Referencing global in another module!
%3 = bitcast [8 x i8]** <badref> to i8* ; <i8*> [#uses=1]Instruction
<badref> is a naked (void*) pointer. This worked on 2.5 without problem.
I tried creating a GlobalVariable:
external constant [8 x i8]* ; <[8 x i8]**>:<badref> [#uses=0]
but there it is <badref> again (an...
2013 Apr 09
3
[LLVMdev] Passing DW_TAG_typedef as the type to DIBuilder's createFunction
Hi David, I'm seeing an assertion failure when passing this node
!{i32 786454, metadata <badref>, metadata <badref>, metadata !"fn_t", i32 5,
i64 0, i64 0, i64 0, i32 0, metadata <badref>} ; [ DW_TAG_typedef ] [fn_t] [line
5, size 0, align 0, offset 0] [from ]
as the function type parameter to DIBuilder::createFunction, due to this check
in DebugInfo.cpp:
486 DI...
2012 Nov 02
2
[LLVMdev] Instruction does not dominate all uses! <badref> ??
...ion
>> with two parameters. The printed IR, with error, looks like this:
>>
>> define i32 @add(i32, i32) {
>> EntryBlock:
>> %2 = add i32 %0, %1
>> ret i32 %2
>> }
>>
>> define i32 @eval_expr() {
>> EntryBlock:
>> ret i32<badref>
>> }
>>
>> Instruction does not dominate all uses!
>> <badref> = call i32 @add(i32 2, i32 3)
>> ret i32<badref>
>
> It's correct but not entirely helpful. You've got an instruction in
> function @eval_expr whose operand is an in...
2012 Nov 02
0
[LLVMdev] Instruction does not dominate all uses! <badref> ??
...#39;m trying to construct a call to a function
> with two parameters. The printed IR, with error, looks like this:
>
> define i32 @add(i32, i32) {
> EntryBlock:
> %2 = add i32 %0, %1
> ret i32 %2
> }
>
> define i32 @eval_expr() {
> EntryBlock:
> ret i32 <badref>
> }
>
> Instruction does not dominate all uses!
> <badref> = call i32 @add(i32 2, i32 3)
> ret i32 <badref>
Looks like you forgot to add the call instruction to EntryBlock.
>
>
> And the approximate/simplified code I'm using to generate the call,...
2013 Apr 09
0
[LLVMdev] Passing DW_TAG_typedef as the type to DIBuilder's createFunction
On Tue, Apr 9, 2013 at 1:53 AM, Duncan Sands <baldrick at free.fr> wrote:
> Hi David, I'm seeing an assertion failure when passing this node
>
> !{i32 786454, metadata <badref>, metadata <badref>, metadata !"fn_t", i32
> 5, i64 0, i64 0, i64 0, i32 0, metadata <badref>} ; [ DW_TAG_typedef ]
> [fn_t] [line 5, size 0, align 0, offset 0] [from ]
>
> as the function type parameter to DIBuilder::createFunction, due to this
> check
>...
2015 Jul 11
7
[LLVMdev] instructions copy
Hi,
I want to copy some dependent statements, like a = b, b = c, from one basicblock to another basicblocks.
Because of SSA, a = b, will be like %1 = load %b, store %1, %a.
If I just use clone() method in Instruction class, it will be like <badref> = load %b, store <badref>, %a.
If I need remap the virtual registers, this map just will affect the whole module? And how to use it? I am a bit confused.
Any suggestion will be appreciated.
Best,
Yuxi
Uchicago
-------------- next part --------------
An HTML attachment was scrubbed...
UR...
2013 Jan 22
1
[LLVMdev] Confusion about Alias Analysis Results -print-no-aliases&&-print-alias-sets
...Pointers: (i32* %retval, 4)</div><div> AliasSet[0x93a80e0, 4] may alias, Mod/Ref Pointers: (void (%class.B*)*** %4, 4), (void (%class.B*)** %vfn, 4), (void (%class.B*)*** %9, 4), (void (%class.B*)** %vfn2, 4)</div><div> 6 Unknown instructions: i8* %call, void <badref>, void <badref>, void <badref>, void <badref>, void <badref></div><div><b><font color="#ff0000"> AliasSet[0x93a9ea8, 1] must alias, Mod/Ref Pointers: (%class.B** %p, 4)</font></b></div><div><b><font col...
2013 Apr 10
2
[LLVMdev] Passing DW_TAG_typedef as the type to DIBuilder's createFunction
Hi Eric,
On 10/04/13 00:20, Eric Christopher wrote:
> On Tue, Apr 9, 2013 at 1:53 AM, Duncan Sands <baldrick at free.fr> wrote:
>> Hi David, I'm seeing an assertion failure when passing this node
>>
>> !{i32 786454, metadata <badref>, metadata <badref>, metadata !"fn_t", i32
>> 5, i64 0, i64 0, i64 0, i32 0, metadata <badref>} ; [ DW_TAG_typedef ]
>> [fn_t] [line 5, size 0, align 0, offset 0] [from ]
>>
>> as the function type parameter to DIBuilder::createFunction, due to this...
2002 Nov 27
1
[LLVMdev] Instruciton replacement
...I)->getParent()->getInstList().erase(*I);
// delete (*I);
// delete(AI);
}
break;
running the code will report:
Leaked objects found: after running pass 'move memory objects from the
heap to the stack'
LLVM Value subclasses leaked: alloca uint ; <uint*>:<badref> [#uses=2]
This is probably because you removed an LLVM value (Instruction,
BasicBlock, etc), but didn't delete it. Please check your code for
memory leaks. Assertion failed: slot != -1 && "Broken bytecode!", file
WriteInst.cpp, line 191
Abort
If I uncomment the (delete(...