[cfe-dev] Illegal instruction problem
    Philip Ashmore 
    contact at philipashmore.com
       
    Sun Nov 27 18:02:15 PST 2011
    
    
  
Hi there.
I've just committed new versions of some of my packages in SourceForge:
v3c-2.2.0-01
treedb-1.2.0-02
meta-treedb-1.3.0-03
I've got a problem with the release build (which uses -03 optimisation) 
of treedb.
The "fuse" tests fail with an illegal instruction fault.
This is with llvm/clang 2.9.svn-r145196.
They work fine with the debug build (-O0 optimisation).
Debug and release builds test fine with gcc.
I made a lot of changes to get this to even compile with clang, as it's 
more picky,
and this process helped me clean up warnings and even find the odd bug.
I know you'd prefer if I provided stand-alone code to demonstrate the 
problem, but
building and installing v3c (which treedb needs) with treedb in a 
"sandbox" takes
about 5 minutes on a modern machine, and that includes the time to 
download them
from SourceForge.
The problem is reproducible.
"$" denotes the command prompt for typing commands
STEPS:
1. install fuse-dev
    The fuse tests need fuse-dev installed or they will be skipped.
2. download and unpack v3c and treedb from SourceForge.
3. type
    $ v3c_default_build_mode=release bash v3c/v3c-tryout treedb-1.2.0-02 
tryout
    from the directory that contains the v3c and treedb directories.
4. When it's done type
    $ tryout/enter-env
    which will take you into a shell with the environment set up to play 
around.
    You'll notice that the command prompt changes to remind you you're 
in a sandbox.
5. Then type
    $ cd treedb-1.2.0-02; make release check
and after a minute or two you'll get to the error.
Regards,
Philip Ashmore
    
    
More information about the cfe-dev
mailing list