[LLVMdev] Some sort of DAG lowering error

Garrison Venn gvenn.cfe.dev at gmail.com
Thu Apr 14 07:29:29 PDT 2011

Just in case anyone else is paying attention to this thread of one. I thought
I would give an update to close out the issue. 

I tested the ExceptionDemo program against against a CentOs 5.4 (updated) system
vmware virt--llvm built with gcc 4.1.2 both with and without -march=i686 (though I don't
understand what effect i686 has on a gcc built for the target: i386-redhat-linux), and all
works fine. I suspect my ec2 config failure has something to do with mix gcc version installs,
but as my current work is concentrated on clang, I'm not going to look further into
this unless others have issues. 

I wrote the ExceptionDemo source about a year ago so it takes me a while to gear up on it--which 
is going to be a lot more fun when MCJIT comes to full fruition. :-) However even though I test first 
with OS X, I do want this to always fully work with x86 Linux, and wish someone was interested 
in porting this to Windows, and ARM based Linux. BSD would be nice also, but this may already work 
anyway. In the end MCJIT and the near (hopefully), future EH design may make this effort moot.

On Apr 11, 2011, at 16:15, Garrison Venn wrote:

> I'm seeing the following result on code which has run successfully before on Linux, and
> currently successfully runs on OS X 10.6.x:
> Stack dump:
> 0.	Running pass 'X86 DAG->DAG Instruction Selection' on function '@outerCatchFunct'
> Segmentation fault
> This process was built as part of the LLVM tree with:
> setenv CC /usr/local/bin/gcc
> setenv CFLAGS -march=i686
> setenv CXX /usr/local/bin/g++
> setenv CXXFLAGS -march=i686
> setenv LD_LIBRARY_PATH /usr/local/lib
> with gcc version 4.2.1
> uname -a: Linux domU-12-31-38-04-95-A7 #1 SMP Fri Sep 17 23:13:59 UTC 2010 i686 i686 i386 GNU/Linux
> Although this result was currently generated from head, I actually saw this error 6 months ago,
> and ignored it thinking it was my configuration; mea maxima culpa :-). I'm not so sure now, but before
> I go deep into building another local configuration, and debugging this, would someone be
> willing to test this on their version of a llvm linux installation?
> To build the test do the equivalent of:
> 1) setenv BUILD_EXAMPLES 1
> 2) make
> at the top of the llvm tree
> Then run:
> <release type>/examples/ExceptionDemo 2 3 7 -1
> at the top of the llvm object root where <release type> == 	Release+Asserts for example
> Thanks in advance
> Garrison

More information about the llvm-dev mailing list