Displaying 20 results from an estimated 100 matches similar to: "[LLVMdev] uses of unwind lead to crashes"
2009 Apr 15
0
[LLVMdev] Accessing instruction/operand names
James Stanier wrote:
> Hello everyone,
>
> I'm currently constructing a graph from LLVM bitcode, and I have a question
> about accessing the names of the variables shown in the .ll assembly file,
> assuming it's possible...
>
> For example, with
>
> %2 = load i32* %x_addr, align 4 ; <i32> [#uses=1]
>
> I can retrieve the opcodeName() from the
2008 Oct 01
0
[LLVMdev] complex branching generation
On Wed, Oct 1, 2008 at 1:19 PM, Villmow, Micah <Micah.Villmow at amd.com> wrote:
> LLVM seems to be generating way too complex of branching based on the
> short-circuit optimization. The code in question is as follows:
>
> define void @ test_fc_while_and(float %x, float %y, float addrspace(11)*
> %result) nounwind {
>
> entry:
>
> %tobool3 = fcmp une float
2009 Apr 15
0
[LLVMdev] Accessing instruction/operand names
The other repliers have been right that you probably want to use
Value*s rather than string names in constructing your dependency
graph, but I wanted to clear up a second possible point of confusion.
When you see %2 in the assembly, that's an indication that the
instruction's name is empty. That is, value->getName() == "". As far
as I know, llvm-dis just generates numbers in
2009 Apr 15
7
[LLVMdev] Accessing instruction/operand names
Hello everyone,
I'm currently constructing a graph from LLVM bitcode, and I have a question
about accessing the names of the variables shown in the .ll assembly file,
assuming it's possible...
For example, with
%2 = load i32* %x_addr, align 4 ; <i32> [#uses=1]
I can retrieve the opcodeName() from the Instruction object, which is
"load". I can also access the operand
2007 Sep 28
3
[LLVMdev] Crash on accessing deleted MBBs (new backend)
Hi,
I'm trying to write up my little m68k backend things have been going
smoothly. I've been working with the x86 backend as a template, fixing
things as I go.
Now I've run into branches and I have a crash I don't really
understand. Here's the sample IR I'm running llc on to generate
assembly:
define i32 @ilog2(i32 %x) {
entry:
%tmp718 = icmp eq i32 %x, 0
2011 Jan 29
1
[LLVMdev] The type or size of virtual registers in machineinstr
Hi,
I want to know what is the type or size of a virtual register in a
Machineinstr::MachineOperand (If this MachineOperand is a register). For
example, what is the size of reg16385 in the following MachineInstr. I know
now in the llvm bitcode, the type of a Instruction could be obtained from
the Value::GetType(), but what is the counterpart in MachineInstr (not
derived from class Value)?
2008 Oct 11
1
[LLVMdev] Debug Information
On 2008-10-11 00:34, Evan Cheng wrote:
> On Oct 10, 2008, at 1:43 PM, John Criswell wrote:
>
>
>> Dear All,
>>
>> Are there a set of libraries for easily manipulating the LLVM debug
>> information? For example, given an Instruction *, is there an
>> interface
>> that will find the nearest llvm.dbg.stoppoint(), or given an alloca,
>> is
2008 Apr 23
2
[LLVMdev] how to dump DSA graph in gdb?
Hi, all:
Recently I am debugging the DSA and want to learn how it work, and now I
am checking the local datastructure analysis.
I use the following command to print the graph:
(gdb) p g.dump()
digraph DataStructures {
label="Function addG";
Node0xe1f3a0 [shape=record,shape=Mrecord,label="{ i32: MRE\n|{<g0>}}"];
Node0xe1f4d0
2008 Feb 18
0
[LLVMdev] cross compiling with the C backend
Kevin André wrote:
> For my master's thesis, I am trying to cross compile programs for the
> PSP (PlayStation Portable) with LLVM and llvm-gcc.
>
> This is what I do:
>
> (1) compile a program and the libraries it uses (libpng etc.) with llvm-gcc
> (2) link the bitcode files with llvm-ld into one file
> (3) run "llc -march=c" on the result
> (4) compile
2008 Apr 23
0
[LLVMdev] how to dump DSA graph in gdb?
Dear Tianwei,
You can use the -analyze option to the opt tool to tell the DSA passes
to store their results in files. When you use the -analyze option, the
DSA passes will create a separate file for each function (and possible
one file to hold the globals graph). For this reason, I recommend
running opt in a special empty directory because DSA will generate *a
lot* of files.
Second, to
2008 Apr 23
0
[LLVMdev] how to dump DSA graph in gdb?
Tianwei wrote:
> On Wed, Apr 23, 2008 at 11:59 PM, John Criswell <criswell at cs.uiuc.edu<mailto:criswell at cs.uiuc.edu>> wrote:
> Dear Tianwei,
>
> You can use the -analyze option to the opt tool to tell the DSA passes
> to store their results in files. When you use the -analyze option, the
> DSA passes will create a separate file for each function (and possible
2008 Apr 23
2
[LLVMdev] how to dump DSA graph in gdb?
On Wed, Apr 23, 2008 at 11:59 PM, John Criswell <criswell at cs.uiuc.edu>
wrote:
> Dear Tianwei,
>
> You can use the -analyze option to the opt tool to tell the DSA passes
> to store their results in files. When you use the -analyze option, the
> DSA passes will create a separate file for each function (and possible
> one file to hold the globals graph). For this reason,
2009 May 24
3
[LLVMdev] llvm address of
I'm trying to generate the equivalent of this function dynamically in llvm
(a la http://llvm.org/docs/tutorial/JITTutorial1.html) but after half a day
of searching I still haven't found how to create the equivalent of the &
(address of) operator in the llvm API, more exactly how do I obtain the i8*
from the i32 below
void fn(int x)
{
another_fn(&x);
}
thanks for any
2009 Nov 10
1
[LLVMdev] Altivec vs the type legalizer
Hi Dale, I think Bob is right: the type legalizer shouldn't be turning v16i8
into v16i32, what should happen is that the return type of the BUILD_VECTOR
continues to be v16i8, but the type of the operands changes to i32, so you
end up with a BUILD_VECTOR that takes 16 lots of i32, and produces a v16i8.
The target then has all the info it needs to produce the best code, but needs
to be careful
2008 Oct 01
2
[LLVMdev] complex branching generation
LLVM seems to be generating way too complex of branching based on the
short-circuit optimization. The code in question is as follows:
define void @ test_fc_while_and(float %x, float %y, float addrspace(11)*
%result) nounwind {
entry:
%tobool3 = fcmp une float %x, 0.000000e+000 ; <i1>
[#uses=1]
%tobool24 = fcmp une float %y, 0.000000e+000 ;
2008 Oct 22
9
[LLVMdev] Helping the optimizer along (__assume)
Hi,
I'm interested in whether or not there is a way of providing
source-level annotations to help LLVM with optimizations, similar to
VisualC++'s __assume facility
(http://msdn.microsoft.com/en-us/library/1b3fsfxw.aspx).
As part of our PHP compiler (phpcompiler.org), it would be great to be
able to annotate our generated C code with, for example, (var !=
NULL), or (var->type ==
2008 Feb 18
4
[LLVMdev] cross compiling with the C backend
For my master's thesis, I am trying to cross compile programs for the
PSP (PlayStation Portable) with LLVM and llvm-gcc.
This is what I do:
(1) compile a program and the libraries it uses (libpng etc.) with llvm-gcc
(2) link the bitcode files with llvm-ld into one file
(3) run "llc -march=c" on the result
(4) compile the resulting C source with the PSP toolchain
It seems to work
2008 Oct 10
0
[LLVMdev] Debug Information
On Oct 10, 2008, at 1:43 PM, John Criswell wrote:
> Dear All,
>
> Are there a set of libraries for easily manipulating the LLVM debug
> information? For example, given an Instruction *, is there an
> interface
> that will find the nearest llvm.dbg.stoppoint(), or given an alloca,
> is
> there an interface for getting its source level information by tracing
> it to
2008 Oct 10
2
[LLVMdev] Debug Information
Dear All,
Are there a set of libraries for easily manipulating the LLVM debug
information? For example, given an Instruction *, is there an interface
that will find the nearest llvm.dbg.stoppoint(), or given an alloca, is
there an interface for getting its source level information by tracing
it to a llvm.dbg.declare()?
As far as I know, no such utility interfaces exist. While I can role my
2010 Dec 01
3
Error While installing Wine on OSX version 10.4.1.1!!
Hello all,
I was trying to install Wine on my MacBook via the Terminal. These are my system specs:
odel Name: MacBook
Model Identifier: MacBook2,1
Processor Name: Intel Core 2 Duo
Processor Speed: 2 GHz
Number Of Processors: 1
Total Number Of Cores: 2
L2 Cache (per processor): 4 MB
Memory: 1 GB
Bus Speed: 667 MHz
Boot ROM Version: MB21.00A5.B07
SMC Version: 1.13f3
Serial Number: BLAHBLABLAH