[LLVMbugs] [Bug 8235] New: MachineFrameInfo assertion when compiling ObjC code

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Sun Sep 26 13:53:50 PDT 2010


http://llvm.org/bugs/show_bug.cgi?id=8235

           Summary: MachineFrameInfo assertion when compiling ObjC code
           Product: clang
           Version: trunk
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: LLVM Codegen
        AssignedTo: unassignedclangbugs at nondot.org
        ReportedBy: qmathe at gmail.com
                CC: llvmbugs at cs.uiuc.edu


When I try to compile GSFusedSilica.m from GNUstep GUI library, I get the
following assertion: 

clang: /home/qmathe/reps/llvm/include/llvm/CodeGen/MachineFrameInfo.h:373:
int64_t llvm::MachineFrameInfo::getObjectOffset(int) const: Assertion
`unsigned(ObjectIdx+NumFixedObjects) < Objects.size() && "Invalid Object Idx!"'
failed.
0  clang 0x09112ef8
Stack dump:
0.    Program arguments: /home/qmathe/reps/llvm/Release+Debug+Asserts/bin/clang
-cc1 -triple i386-pc-linux-gnu -S -disable-free -main-file-name GSFusedSilica.m
-pic-level 2 -mdisable-fp-elim -mconstructor-aliases -target-cpu pentium4
-target-linker-version 2.20.1 -g -resource-dir
/home/qmathe/reps/llvm/Release+Debug+Asserts/lib/clang/2.9 -dependency-file
obj/libgnustep-gui.obj/GSFusedSilica.m.d -MT
obj/libgnustep-gui.obj/GSFusedSilica.m.o -MP -D GNUSTEP_TARGET_DIR="." -D
GNUSTEP_TARGET_CPU="ix86" -D GNUSTEP_TARGET_OS="linux-gnu" -D
LIBRARY_COMBO="gnu-gnu-gnu" -D BACKEND_BUNDLE=1 -D GNUSTEP -D
GNUSTEP_BASE_LIBRARY=1 -D GNU_GUI_LIBRARY=1 -D GNU_RUNTIME=1 -D
GNUSTEP_BASE_LIBRARY=1 -D DEBUG -D GSWARN -D GSDIAGNOSE -I ../Headers/Additions
-I ../Headers -I ./. -I . -I /home/qmathe/GNUstep/Library/Headers -I
/Local/Library/Headers -I /System/Library/Headers -Wall -Wno-import -Wall
-fconstant-string-class NSConstantString -ferror-limit 19 -fmessage-length 103
-fgnu-runtime -fdiagnostics-show-option -fcolor-diagnostics -o /tmp/cc-IhhddS.s
-x objective-c GSFusedSilica.m 
1.    <eof> parser at end of file
2.    Code generation
3.    Running pass 'Function Pass Manager' on module 'GSFusedSilica.m'.
4.    Running pass 'X86 AT&T-Style Assembly Printer' on function
'@CGRectStandardize'
clang: error: clang frontend command failed due to signal 6 (use -v to see
invocation)

GSFusedSilica.m is visible here:
http://svn.gna.org/viewcvs/gnustep/libs/gui/trunk/Source/GSFusedSilica.m?revision=30448&view=markup

I attached a reduced version of GSFusedSilica.m that still triggers the
assertion. This reduced version has no import/include.

If I add a main() to this file and compiles it with 'clang GSFusedSilica.m' I
get no assertion or crash.

Here is the output of clang -v:
clang version 2.9 (trunk 114728)
Target: i386-pc-linux-gnu
Thread model: posix

-- 
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.



More information about the llvm-bugs mailing list