Hi David
Thanks for fixing that error so quickly, but now I have new set :-(. If it
helps, I'm running Debian 5.0 i686 under VMWare Fusion 2.0 on an Intel Macbook.
I've tried compiling in debug mode, but the stack traces are useless.
It randomly segfaults, but most of the time I get stuff like this:
ch...@debian:~/etoile/Etoile/Languages/Smalltalk/Tests/TestBlockAssignment$
edlc -f test.st
edlc: CodeGenLexicalScope.cpp:1025: llvm::Value
*CodeGenLexicalScope::LoadValueOfTypeAtOffsetFromObject(const char *, const
char *, const char *, unsigned int, llvm::Value *): Assertion
`isLKObject(type)' failed.
Aborted
ch...@debian:~/etoile/Etoile/Languages/Smalltalk/Tests/TestBlockAssignment$
edlc -i -f test.st
2010-10-16 23:48:48.230 edlc[26090] <NSException: 0x9460a10>
NAME:LKInterpreterException REASON:ObjC to FFI type conversion not supported
for '^' INFO:(nil)
2010-10-16 23:48:48.231 edlc[26090] Failed to compile input.
In another case:
ch...@debian:~/etoile/Etoile/Languages/Smalltalk/Tests/TestBlockAssignment$ cd
../TestBlockReturn
ch...@debian:~/etoile/Etoile/Languages/Smalltalk/Tests/TestBlockReturn$ edlc -f
test.st
edlc: Analysis.cpp:121: llvm::GlobalVariable*
llvm::ExtractTypeInfo(llvm::Value*): Assertion `(GV ||
isa<ConstantPointerNull>(V)) && "TypeInfo must be a global variable or NULL"'
failed.
Stack dump:
0. Running pass 'X86 DAG->DAG Instruction Selection' on function
'@_i_SmalltalkTool__run'
Aborted
ch...@debian:~/etoile/Etoile/Languages/Smalltalk/Tests/TestBlockReturn$
ch...@debian:~/etoile/Etoile/Languages/Smalltalk/Tests/TestBlockReturn$ edlc -i
-f test.st
2010-10-16 23:50:15.770 edlc[26095] <NSException: 0xb5703538>
NAME:LKInterpreterException REASON:ObjC to FFI type conversion not supported
for '^' INFO:(nil)
2010-10-16 23:50:15.770 edlc[26095] Failed to compile input.
And another case (with non-deterministic results):
ch...@debian:~/etoile/Etoile/Languages/Smalltalk/Tests/TestCascadedMessages$
edlc -f test.st
edlc: Analysis.cpp:121: llvm::GlobalVariable*
llvm::ExtractTypeInfo(llvm::Value*): Assertion `(GV ||
isa<ConstantPointerNull>(V)) && "TypeInfo must be a global variable or NULL"'
failed.
Stack dump:
0. Running pass 'X86 DAG->DAG Instruction Selection' on function
'@_i_SmalltalkTool__run'
Aborted
ch...@debian:~/etoile/Etoile/Languages/Smalltalk/Tests/TestCascadedMessages$
edlc -i -f test.st
Segmentation fault
ch...@debian:~/etoile/Etoile/Languages/Smalltalk/Tests/TestCascadedMessages$
edlc -i -f test.st
A simple test?
ch...@debian:~/etoile/Etoile/Languages/Smalltalk/Tests/TestCascadedMessages$
edlc -i -f test.st
Segmentation fault
But interestingly, some stuff seems to work:
ch...@debian:~/etoile/Etoile/Languages/Smalltalk/Tests/TestClassMethods1$ edlc
-f test.st
edlc: Analysis.cpp:121: llvm::GlobalVariable*
llvm::ExtractTypeInfo(llvm::Value*): Assertion `(GV ||
isa<ConstantPointerNull>(V)) && "TypeInfo must be a global variable or NULL"'
failed.
Stack dump:
0. Running pass 'X86 DAG->DAG Instruction Selection' on function
'@_i_SmalltalkTool__run'
Aborted
ch...@debian:~/etoile/Etoile/Languages/Smalltalk/Tests/TestClassMethods1$ edlc
-i -f test.st
simple class method invocation
simple class method invocation 2
ch...@debian:~/etoile/Etoile/Languages/Smalltalk/Tests/TestClassMethods1$ edlc
-i -f test.st
simple class method invocation
simple class method invocation 2
ch...@debian:~/etoile/Etoile/Languages/Smalltalk/Tests/TestClassMethods1$ edlc
-i -f test.st
simple class method invocation
simple class method invocation 2
ch...@debian:~/etoile/Etoile/Languages/Smalltalk/Tests/TestClassMethods1$ edlc
-i -f test.st
simple class method invocation
simple class method invocation 2
Cheers
Chris
On 18/10/2010, at 22:07 PM, David Chisnall wrote:
> Hi Chris,
>
> Sorry about this - it's an issue that only occurs on platforms where int and
> void* are different sizes, so I didn't see it. It should be fixed in r6444.
>
> David
>
> On 18 Oct 2010, at 10:03, Christopher Armstrong wrote:
>
>> Hi all
>>
>> I'm trying to run some of the test Smalltalk scripts in the Etoile
>> distribution. I have installed the latest SVN versions of GNUstep, Etoile
>> and LLVM/Clang. Everything has been compiled with clang.
>>
>> When I try and run any script, I get the following error:
>>
>> ch...@debian:~/etoile/Etoile/Languages/Smalltalk/Tests/TestBlockReturn$ edlc
>> -f test.st
>> edlc: Constants.cpp:1215: static llvm::Constant*
>> llvm::ConstantExpr::getPointerCast(llvm::Constant*, const llvm::Type*):
>> Assertion `S->getType()->isPointerTy() && "Invalid cast"' failed.
>> Aborted
>> ch...@debian:~/etoile/Etoile/Languages/Smalltalk/Tests/TestBlockReturn$
>>
>> Any clue what this means? If I attach gdb to edlc, the backtrace at the
>> point the exception is thrown is:
>> #0 0xb802c424 in __kernel_vsyscall ()
>> #1 0xb701b640 in raise () from /lib/i686/cmov/libc.so.6
>> #2 0xb701d018 in abort () from /lib/i686/cmov/libc.so.6
>> #3 0xb70145be in __assert_fail () from /lib/i686/cmov/libc.so.6
>> #4 0xb5bb4576 in llvm::ConstantExpr::getPointerCast ()
>> from
>> /usr/local/GNUstep/Local/Library/Frameworks/LanguageKitCodeGen.framework/Versions/Current/./LanguageKitCodeGen
>> #5 0xb5ec84e8 in ?? () from
>> /usr/local/GNUstep/Local/Library/Frameworks/LanguageKitCodeGen.framework/Versions/Current/./LanguageKitCodeGen
>> #6 0xb5ec9544 in ?? () from
>> /usr/local/GNUstep/Local/Library/Frameworks/LanguageKitCodeGen.framework/Versions/Current/./LanguageKitCodeGen
>> #7 0x000004bf in ?? ()
>> #8 0xb5ecbf00 in ?? () from
>> /usr/local/GNUstep/Local/Library/Frameworks/LanguageKitCodeGen.framework/Versions/Current/./LanguageKitCodeGen
>> #9 0xb5f3c3a0 in ?? () from
>> /usr/local/GNUstep/Local/Library/Frameworks/LanguageKitCodeGen.framework/Versions/Current/./LanguageKitCodeGen
>> #10 0x08d9ed50 in ?? ()
>> #11 0x08ddf49c in ?? ()
>> #12 0xb54bc018 in CodeGenLexicalScope::InitialiseFunction (this=0x8dcaa40,
>> humanna...@0xbff45568, symbols=0xbff45680,
>> MethodTypes=0x8dca3d8 "^{LKObject_hack=(?...@i)}...@0:8", locals=1,
>> loca...@0x8dcaa50, ar...@0x8dcaa80)
>> at
>> /home/chris/etoile/Etoile/Languages/LanguageKit/CodeGen/CodeGenLexicalScope.cpp:665
>> #13 0xb54b4e86 in CodeGenMethod::CodeGenMethod (Mod=0x0, this=0x8dcaa40,
>> MethodTypes=0x8dca3d8 "^{LKObject_hack=(?...@i)}...@0:8",
>> localNames=0xbff45680,
>> locals=1, MethodName=0x8dca878 "createCounter") at
>> /home/chris/etoile/Etoile/Languages/LanguageKit/CodeGen/CodeGenModule.cpp:226
>> #14 0xb54b5089 in CodeGenModule::BeginInstanceMethod (MethodName=0x8dca878
>> "createCounter", this=0x8d9f038, localNames=0xbff45680, locals=1,
>> MethodTypes=0x8dca3d8 "^{LKObject_hack=(?...@i)}...@0:8") at
>> /home/chris/etoile/Etoile/Languages/LanguageKit/CodeGen/CodeGenModule.cpp:242
>> Segmentation fault
>>
>> (The segmentation fault is from GDB)
>>
>> Thanks
>> Chris
>> --------
>> Christopher Armstrong
>> [email protected]
>>
>>
>>
>>
>>
>>
>> _______________________________________________
>> Etoile-discuss mailing list
>> [email protected]
>> https://mail.gna.org/listinfo/etoile-discuss
>
> -- Send from my Jacquard Loom
>
>
> _______________________________________________
> Etoile-discuss mailing list
> [email protected]
> https://mail.gna.org/listinfo/etoile-discuss
--------
Christopher Armstrong
[email protected]
_______________________________________________
Etoile-discuss mailing list
[email protected]
https://mail.gna.org/listinfo/etoile-discuss