Skip to content

Instantly share code, notes, and snippets.

@dgtized
Created July 22, 2009 21:11
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dgtized/152277 to your computer and use it in GitHub Desktop.
Save dgtized/152277 to your computer and use it in GitHub Desktop.
$ bin/mspec ci -T -Xjit.enabled --gdb
GNU gdb 6.8-debian
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i486-linux-gnu"...
(gdb) run
Starting program: /home/clgc/languages/rbx/bin/rbx -Xjit.enabled -v /home/clgc/languages/rbx/mspec/bin/mspec-ci
[Thread debugging using libthread_db enabled]
[New Thread 0xb7cd06d0 (LWP 13670)]
[New Thread 0xb74c4b90 (LWP 13673)]
rubinius 0.11.0-dev (ruby 1.8.6) (627f73ee7 12/31/2009) [i686-pc-linux-gnu]
[New Thread 0xb5cc3b90 (LWP 13678)]
................................................................................E...................................................................................Ebug!
0xbfedab00: FFI::Struct#initialize in kernel/platform/struct.rb:71 (+41)
0xbfedad0c: Class#new in kernel/alpha.rb:55 (+13)
0xbfedb420: File::Stat.create in kernel/common/file.rb:1028 (+27)
0xbfedbc20: File::Stat.stat in kernel/common/file.rb:1034 (+7)
0xbfedc440: Compiler::Utils.single_load in kernel/compiler/compile.rb:157 (+61)
0xbfedccd0: Compiler::Utils.unified_load in kernel/compiler/compile.rb:89 (+167)
0xbfedd530: Kernel.load in kernel/common/kernel.rb:299 (+299)
0xbfeddd80: __block__ in /home/clgc/languages/rbx/mspec/lib/mspec/runner/mspec.rb:9 (+9)
0xbfede620: <included module>#instance_eval in kernel/common/eval.rb:119 (+96)
0xbfedeed0: MSpec.protect in /home/clgc/languages/rbx/mspec/lib/mspec/runner/mspec.rb:68 (+37)
0xbfedf6e0: __block__ in /home/clgc/languages/rbx/mspec/lib/mspec/runner/mspec.rb:56 (+55)
0xbfedf8d4: Array#each in kernel/bootstrap/array.rb:152 (+17)
0xbfedfff0: MSpec.files in /home/clgc/languages/rbx/mspec/lib/mspec/runner/mspec.rb:41 (+41)
0xbfee07f0: MSpec.process in /home/clgc/languages/rbx/mspec/lib/mspec/runner/mspec.rb:42 (+12)
0xbfee0ff0: MSpecCI#run in /home/clgc/languages/rbx/mspec/lib/mspec/commands/mspec-ci.rb:74 (+61)
0xbfee1800: MSpecScript.main in /home/clgc/languages/rbx/mspec/lib/mspec/utils/script.rb:66 (+66)
0xbfee2000: #<Object:0xb74edd58>.__script__ in /home/clgc/languages/rbx/mspec/bin/mspec-ci:8 (+57)
0xbfee2800: Rubinius::CompiledMethod#as_script in kernel/common/compiled_method.rb:104 (+104)
0xbfee3010: Compiler::Utils.single_load in kernel/compiler/compile.rb:239 (+480)
0xbfee3890: Compiler::Utils.load_from_extension in kernel/compiler/compile.rb:244 (+244)
0xbfee40d0: Rubinius::Loader#script in kernel/loader.rb:317 (+98)
0xbfee48f0: Rubinius::Loader#main in kernel/loader.rb:397 (+51)
0xbfee5110: Object#__script__ in kernel/loader.rb:445 (+45)
Abort!
/home/clgc/languages/rbx/bin/rbx(_ZN8rubinius5abortEv+0x40) [0x82782a7]
/home/clgc/languages/rbx/bin/rbx(_ZN8rubinius8VMMethod11interpreterEPNS_2VMEPS0_PNS_20InterpreterCallFrameERNS_9ArgumentsE+0x4bb8) [0x838fafa]
/home/clgc/languages/rbx/bin/rbx(_ZN8rubinius8VMMethod19execute_specializedINS_16GenericArgumentsEEEPNS_6ObjectEPNS_2VMEPNS_9CallFrameERNS_8DispatchERNS_9ArgumentsE+0x4bb) [0x81d1ce3]
/home/clgc/languages/rbx/bin/rbx(_ZN8rubinius8Dispatch4sendEPNS_2VMEPNS_9CallFrameERNS_10LookupDataERNS_9ArgumentsE+0x110) [0x82880e6]
/home/clgc/languages/rbx/bin/rbx(rbx_splat_send_private+0x104) [0x8374466]
[0xb5d44440]
/home/clgc/languages/rbx/bin/rbx(_ZN8rubinius11InlineCache11check_cacheEPNS_2VMEPS0_PNS_9CallFrameERNS_9ArgumentsE+0x76) [0x8272d18]
/home/clgc/languages/rbx/bin/rbx(_ZN8rubinius11InlineCache21check_cache_referenceEPNS_2VMEPS0_PNS_9CallFrameERNS_9ArgumentsE+0xa2) [0x8271bc4]
/home/clgc/languages/rbx/bin/rbx(_ZN8rubinius11InlineCache21check_cache_referenceEPNS_2VMEPS0_PNS_9CallFrameERNS_9ArgumentsE+0xa2) [0x8271bc4]
/home/clgc/languages/rbx/bin/rbx(_ZN8rubinius11InlineCache21check_cache_referenceEPNS_2VMEPS0_PNS_9CallFrameERNS_9ArgumentsE+0xa2) [0x8271bc4]
/home/clgc/languages/rbx/bin/rbx(_ZN8rubinius11InlineCache21check_cache_referenceEPNS_2VMEPS0_PNS_9CallFrameERNS_9ArgumentsE+0xa2) [0x8271bc4]
/home/clgc/languages/rbx/bin/rbx(_ZN8rubinius16BlockEnvironment10call_underEPNS_2VMEPNS_10ExecutableEPNS_9CallFrameERNS_8DispatchERNS_9ArgumentsE+0x160) [0x82c652c]
/home/clgc/languages/rbx/bin/rbx(_ZN8rubinius11InlineCache11empty_cacheEPNS_2VMEPS0_PNS_9CallFrameERNS_9ArgumentsE+0x1c2) [0x8273a3a]
/home/clgc/languages/rbx/bin/rbx(_ZN8rubinius11InlineCache11check_cacheEPNS_2VMEPS0_PNS_9CallFrameERNS_9ArgumentsE+0x76) [0x8272d18]
/home/clgc/languages/rbx/bin/rbx(_ZN8rubinius16BlockEnvironment4callEPNS_2VMEPNS_9CallFrameERNS_9ArgumentsEi+0x7e) [0x82c5e22]
[0xb74eda5c]
[0xb78a2504]
[0xbfee08cc]
[0x160]
[0x12]
[0x9335cb0]
[0x930e3d8]
[0xb788c6b4]
[0xb75cd4b0]
[0x938f4d0]
[0xb77e5ef4]
[0x1c95f0]
rbx: vm/exception.cpp:114: void rubinius::abort(): Assertion `0' failed.
Program received signal SIGABRT, Aborted.
[Switching to Thread 0xb7cd06d0 (LWP 13670)]
0xb7fca430 in __kernel_vsyscall ()
(gdb) bt
#0 0xb7fca430 in __kernel_vsyscall ()
#1 0xb7cfc6d0 in raise () from /lib/tls/i686/cmov/libc.so.6
#2 0xb7cfe098 in abort () from /lib/tls/i686/cmov/libc.so.6
#3 0xb7cf55ce in __assert_fail () from /lib/tls/i686/cmov/libc.so.6
#4 0x082782d1 in rubinius::abort () at vm/exception.cpp:114
#5 0x0838fafa in rubinius::VMMethod::interpreter (state=0x8e8aa30, vmm=0x8f60a10, call_frame=0xbfedab00, args=@0xbfedac80) at vm/gen/instructions.cpp:1297
#6 0x081d1ce3 in rubinius::VMMethod::execute_specialized<rubinius::GenericArguments> (state=0x8e8aa30, previous=0xbfedad0c, msg=@0xbfedac94, args=@0xbfedac80) at vm/vmmethod.cpp:556
#7 0x082880e6 in rubinius::Dispatch::send (this=0xbfedac94, state=0x8e8aa30, call_frame=0xbfedad0c, lookup=@0xbfedaca4, args=@0xbfedac80) at vm/dispatch.cpp:32
#8 0x08374466 in rbx_splat_send_private (state=0x8e8aa30, call_frame=0xbfedad0c, name=0x1b2e, count=0, args=0xbfedad2c) at vm/llvm/jit_util.cpp:97
#9 0xb5d44440 in ?? ()
#10 0x08272d18 in rubinius::InlineCache::check_cache (state=0x8e8aa30, cache=0x90a6988, call_frame=0xbfedbc20, args=@0xbfedb73c) at vm/inline_cache.cpp:322
#11 0x0838fbc5 in rubinius::InlineCache::execute (this=0x90a6988, state=0x8e8aa30, call_frame=0xbfedbc20, args=@0xbfedb73c) at vm/inline_cache.hpp:169
#12 0x0838d0a9 in rubinius::VMMethod::interpreter (state=0x8e8aa30, vmm=0x8fa8eb8, call_frame=0xbfedbc20, args=@0xbfedbf5c) at vm/gen/instructions.cpp:702
#13 0x081d3063 in rubinius::VMMethod::execute_specialized<rubinius::OneArgument> (state=0x8e8aa30, previous=0xbfedc440, msg=@0x9328500, args=@0xbfedbf5c) at vm/vmmethod.cpp:556
#14 0x08271bc4 in rubinius::InlineCache::check_cache_reference (state=0x8e8aa30, cache=0x9328500, call_frame=0xbfedc440, args=@0xbfedbf5c) at vm/inline_cache.cpp:311
#15 0x0838fbc5 in rubinius::InlineCache::execute (this=0x9328500, state=0x8e8aa30, call_frame=0xbfedc440, args=@0xbfedbf5c) at vm/inline_cache.hpp:169
#16 0x0838d0a9 in rubinius::VMMethod::interpreter (state=0x8e8aa30, vmm=0x930e9d0, call_frame=0xbfedc440, args=@0xbfedc7ec) at vm/gen/instructions.cpp:702
#17 0x081d21c3 in rubinius::VMMethod::execute_specialized<rubinius::FixedArguments> (state=0x8e8aa30, previous=0xbfedccd0, msg=@0x930bde8, args=@0xbfedc7ec) at vm/vmmethod.cpp:556
#18 0x08271bc4 in rubinius::InlineCache::check_cache_reference (state=0x8e8aa30, cache=0x930bde8, call_frame=0xbfedccd0, args=@0xbfedc7ec) at vm/inline_cache.cpp:311
#19 0x0838fbc5 in rubinius::InlineCache::execute (this=0x930bde8, state=0x8e8aa30, call_frame=0xbfedccd0, args=@0xbfedc7ec) at vm/inline_cache.hpp:169
#20 0x0838d0a9 in rubinius::VMMethod::interpreter (state=0x8e8aa30, vmm=0x930b390, call_frame=0xbfedccd0, args=@0xbfedd04c) at vm/gen/instructions.cpp:702
#21 0x081d1ce3 in rubinius::VMMethod::execute_specialized<rubinius::GenericArguments> (state=0x8e8aa30, previous=0xbfedd530, msg=@0x8fd0794, args=@0xbfedd04c) at vm/vmmethod.cpp:556
#22 0x08271bc4 in rubinius::InlineCache::check_cache_reference (state=0x8e8aa30, cache=0x8fd0794, call_frame=0xbfedd530, args=@0xbfedd04c) at vm/inline_cache.cpp:311
#23 0x0838fbc5 in rubinius::InlineCache::execute (this=0x8fd0794, state=0x8e8aa30, call_frame=0xbfedd530, args=@0xbfedd04c) at vm/inline_cache.hpp:169
#24 0x0838d0a9 in rubinius::VMMethod::interpreter (state=0x8e8aa30, vmm=0x8fcf900, call_frame=0xbfedd530, args=@0xbfedd89c) at vm/gen/instructions.cpp:702
#25 0x081d1ce3 in rubinius::VMMethod::execute_specialized<rubinius::GenericArguments> (state=0x8e8aa30, previous=0xbfeddd80, msg=@0x95f83b0, args=@0xbfedd89c) at vm/vmmethod.cpp:556
#26 0x08271bc4 in rubinius::InlineCache::check_cache_reference (state=0x8e8aa30, cache=0x95f83b0, call_frame=0xbfeddd80, args=@0xbfedd89c) at vm/inline_cache.cpp:311
#27 0x0838fbc5 in rubinius::InlineCache::execute (this=0x95f83b0, state=0x8e8aa30, call_frame=0xbfeddd80, args=@0xbfedd89c) at vm/inline_cache.hpp:169
#28 0x0838d0a9 in rubinius::VMMethod::interpreter (state=0x8e8aa30, vmm=0x95f8328, call_frame=0xbfeddd80, args=@0xbfede13c) at vm/gen/instructions.cpp:702
#29 0x082c6b2f in rubinius::BlockEnvironment::execute_interpreter (state=0x8e8aa30, previous=0xbfede620, env=0xb776ec94, args=@0xbfede13c, invocation=@0xbfeddebc) at vm/builtin/block_environment.cpp:123
#30 0x082c652c in rubinius::BlockEnvironment::call_under (this=0xb776ec94, state=0x8e8aa30, exec=0xb7537c34, call_frame=0xbfede620, msg=@0x9067f84, args=@0xbfede13c) at vm/builtin/block_environment.cpp:178
#31 0x08261a1c in rubinius::Primitives::block_call_under (state=0x8e8aa30, call_frame=0xbfede620, msg=@0x9067f84, args=@0xbfede13c) at vm/gen/primitives_glue.gen.cpp:2352
#32 0x08271bc4 in rubinius::InlineCache::check_cache_reference (state=0x8e8aa30, cache=0x9067f84, call_frame=0xbfede620, args=@0xbfede13c) at vm/inline_cache.cpp:311
#33 0x0838fbc5 in rubinius::InlineCache::execute (this=0x9067f84, state=0x8e8aa30, call_frame=0xbfede620, args=@0xbfede13c) at vm/inline_cache.hpp:169
#34 0x0838d0a9 in rubinius::VMMethod::interpreter (state=0x8e8aa30, vmm=0x90672e0, call_frame=0xbfede620, args=@0xbfede9ec) at vm/gen/instructions.cpp:702
#35 0x081d1ce3 in rubinius::VMMethod::execute_specialized<rubinius::GenericArguments> (state=0x8e8aa30, previous=0xbfedeed0, msg=@0x93f4fb8, args=@0xbfede9ec) at vm/vmmethod.cpp:556
#36 0x08273a3a in rubinius::InlineCache::empty_cache (state=0x8e8aa30, cache=0x93f4fb8, call_frame=0xbfedeed0, args=@0xbfede9ec) at vm/inline_cache.cpp:219
#37 0x08273abf in rubinius::InlineCache::initialize (this=0x93f4fb8, state=0x8e8aa30, call_frame=0xbfedeed0, args=@0xbfede9ec) at vm/inline_cache.hpp:173
#38 0x08271bee in rubinius::InlineCache::check_cache_reference (state=0x8e8aa30, cache=0x93f4fb8, call_frame=0xbfedeed0, args=@0xbfede9ec) at vm/inline_cache.cpp:314
#39 0x0838fbc5 in rubinius::InlineCache::execute (this=0x93f4fb8, state=0x8e8aa30, call_frame=0xbfedeed0, args=@0xbfede9ec) at vm/inline_cache.hpp:169
#40 0x0838d1fb in rubinius::VMMethod::interpreter (state=0x8e8aa30, vmm=0x93f4a78, call_frame=0xbfedeed0, args=@0xbfedf1fc) at vm/gen/instructions.cpp:723
#41 0x081d3063 in rubinius::VMMethod::execute_specialized<rubinius::OneArgument> (state=0x8e8aa30, previous=0xbfedf6e0, msg=@0x96301c4, args=@0xbfedf1fc) at vm/vmmethod.cpp:556
#42 0x08272d18 in rubinius::InlineCache::check_cache (state=0x8e8aa30, cache=0x96301c4, call_frame=0xbfedf6e0, args=@0xbfedf1fc) at vm/inline_cache.cpp:322
#43 0x0838fbc5 in rubinius::InlineCache::execute (this=0x96301c4, state=0x8e8aa30, call_frame=0xbfedf6e0, args=@0xbfedf1fc) at vm/inline_cache.hpp:169
#44 0x0838d1fb in rubinius::VMMethod::interpreter (state=0x8e8aa30, vmm=0x962fe10, call_frame=0xbfedf6e0, args=@0xbfedf854) at vm/gen/instructions.cpp:723
#45 0x082c6b2f in rubinius::BlockEnvironment::execute_interpreter (state=0x8e8aa30, previous=0xbfedf8d4, env=0xb4d03a48, args=@0xbfedf854, invocation=@0xbfedf818) at vm/builtin/block_environment.cpp:123
#46 0x082c5e22 in rubinius::BlockEnvironment::call (this=0xb4d03a48, state=0x8e8aa30, call_frame=0xbfedf8d4, args=@0xbfedf854, flags=0) at vm/builtin/block_environment.cpp:137
#47 0x08373515 in rbx_yield_stack (state=0x8e8aa30, call_frame=0xbfedf8d4, count=1, args=0xbfedf8f4) at vm/llvm/jit_util.cpp:300
#48 0xb5d46d3a in ?? ()
#49 0xb74eda5c in ?? ()
#50 0xb78a2504 in ?? ()
#51 0xbfee08cc in ?? ()
#52 0x00000160 in ?? ()
#53 0xb4d03b04 in ?? ()
#54 0x00000012 in ?? ()
#55 0x08c72ff4 in ?? ()
#56 0x09335cb0 in ?? ()
#57 0x0930e3d8 in ?? ()
#58 0xb788c6b4 in ?? ()
#59 0xb75cd4b0 in ?? ()
#60 0x0938f4d0 in ?? ()
#61 0xb77e5ef4 in ?? ()
#62 0x001c95f0 in ?? ()
[51 clgc@consistency ~/languages/rbx]$ bin/mspec ci --profile -T-Xjit.enabled
rubinius 0.11.0-dev (ruby 1.8.6) (728eddc82 12/31/2009) [i686-pc-linux-gnu]
....Segmentation fault
[52 clgc@consistency ~/languages/rbx]$ bin/mspec ci -T-Xjit.enabled
rubinius 0.11.0-dev (ruby 1.8.6) (728eddc82 12/31/2009) [i686-pc-linux-gnu]
...........Stack dump:
0. Running pass 'Combine redundant instructions' on function '@34'
Segmentation fault
[53 clgc@consistency ~/languages/rbx]$ bin/mspec ci -T-Xjit.enabled
rubinius 0.11.0-dev (ruby 1.8.6) (728eddc82 12/31/2009) [i686-pc-linux-gnu]
.......Segmentation fault
[53 clgc@consistency ~/languages/rbx]$ bin/mspec ci -T-Xjit.enabled
rubinius 0.11.0-dev (ruby 1.8.6) (728eddc82 12/31/2009) [i686-pc-linux-gnu]
....Stack dump:
Segmentation fault
[53 clgc@consistency ~/languages/rbx]$ bin/mspec ci -T -Xjit.enabled
rubinius 0.11.0-dev (ruby 1.8.6) (728eddc82 12/31/2009) [i686-pc-linux-gnu]
....Stack dump:
0. Running pass 'Module Verifier' on function '@34'
Segmentation fault
[54 clgc@consistency ~/languages/rbx]$ bin/mspec ci -T -Xjit.enabled --gdb
GNU gdb 6.8-debian
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i486-linux-gnu"...
(gdb) run
Starting program: /home/clgc/languages/rbx/bin/rbx -Xjit.enabled -v /home/clgc/languages/rbx/mspec/bin/mspec-ci
[Thread debugging using libthread_db enabled]
[New Thread 0xb7d6f6d0 (LWP 11397)]
[New Thread 0xb7563b90 (LWP 11400)]
rubinius 0.11.0-dev (ruby 1.8.6) (728eddc82 12/31/2009) [i686-pc-linux-gnu]
[New Thread 0xb5d62b90 (LWP 11405)]
.....
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb7d6f6d0 (LWP 11397)]
rbx_ffi_to_ptr (state=0xb77a14b0, obj=0x0) at vm/gen/kind_of.hpp:316
316 return (REFERENCE_P(obj) && obj->type_id() == MemoryPointerType);
(gdb) bt
#0 rbx_ffi_to_ptr (state=0xb77a14b0, obj=0x0) at vm/gen/kind_of.hpp:316
#1 0xb5dead0f in ?? ()
#2 0x081d6e93 in rubinius::InlineCache::check_cache_reference (state=0xc1, cache=0xb77a14b0, call_frame=0x9e46998, args=@0x0) at vm/inline_cache.cpp:311
#3 0xb5dea248 in ?? ()
Backtrace stopped: previous frame inner to this frame (corrupt stack?)
(gdb) quit
The program is running. Exit anyway? (y or n) y
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment