Created
December 6, 2009 00:29
-
-
Save cezarsa/249945 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
cezar@cezar-ubuntu:~/dev/rubinius$ bin/rbx -e "100000000.times { 1 + 1 }" | |
Stack dump: | |
0. Running pass 'Unnamed pass: implement Pass::getPassName()' on function '@0' | |
Error: signal SIGSEGV | |
bin/rbx[0x81c0db2] | |
[0x3e1400] | |
bin/rbx(_ZNK4llvm3Use14getImpliedUserEv+0x7)[0x8925137] | |
[0x8] | |
bin/rbx(_ZN4llvm11ConstantIntD0Ev+0x0)[0x88af8a0] | |
[0xe814245c] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
cezar@cezar-ubuntu:~/dev/rubinius$ gdb --args bin/rbx -e "10000000.times { 1 + 1 }" | |
GNU gdb (GDB) 7.0-ubuntu | |
Copyright (C) 2009 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". | |
For bug reporting instructions, please see: | |
<http://www.gnu.org/software/gdb/bugs/>... | |
Reading symbols from /home/cezar/dev/rubinius/bin/rbx...done. | |
(gdb) run | |
Starting program: /home/cezar/dev/rubinius/bin/rbx -e 10000000.times\ \{\ 1\ +\ 1\ \} | |
[Thread debugging using libthread_db enabled] | |
[New Thread 0x1b46b70 (LWP 9130)] | |
[New Thread 0x49f0b70 (LWP 9135)] | |
Program received signal SIGSEGV, Segmentation fault. | |
[Switching to Thread 0x49f0b70 (LWP 9135)] | |
0x08925137 in llvm::Use::getImpliedUser() const () | |
(gdb) bt | |
#0 0x08925137 in llvm::Use::getImpliedUser() const () | |
#1 0x089251fb in llvm::Use::getUser() const () | |
#2 0x089251e6 in llvm::Use::getUser() const () | |
#3 0x08277655 in llvm::value_use_iterator<llvm::User>::operator* (this=0x9183498, f=...) | |
at vm/external_libs/llvm/include/llvm/Use.h:198 | |
#4 try_to_fold_addition (this=0x9183498, f=...) at vm/llvm/passes.cpp:223 | |
#5 runOnFunction (this=0x9183498, f=...) at vm/llvm/passes.cpp:270 | |
#6 0x08912298 in llvm::FPPassManager::runOnFunction(llvm::Function&) () | |
#7 0x049f0084 in ?? () | |
Backtrace stopped: previous frame inner to this frame (corrupt stack?) | |
(gdb) quit |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
cezar@cezar-ubuntu:~/dev/rubinius_fresh$ bin/rbx -Xjit.show -Xjit.inline.debug -e "10000000.times { 1 + 1 }" | |
JIT: target search from primitive | |
JIT: queueing method: Hash#[]= | |
[[[ JIT Queued method 1/0 ]]] | |
JIT: queueing method: Object#__block__ | |
[[[ JIT Queued block 2/0 ]]] | |
JIT: compiling Hash#[]= | |
inlining: Hash#redistribute into []= (Hash) | |
NOT inlining: Fixnum#* into redistribute. primitive: fixnum_mul | |
NOT inlining: Fixnum#* into redistribute. primitive: fixnum_mul | |
inlining: Hash#setup into redistribute (Hash) | |
inlining: Rubinius::Tuple#new into setup. generic primitive: jit_stub_tuple_allocate | |
inlining: primitive fixnum_lt into redistribute. | |
inlining: Rubinius::Tuple#[] into redistribute. primitive tuple_at | |
inlining: read to '@next' on Hash::Entry in #redistribute | |
inlining: writer to '@next' on Hash::Entry in #redistribute | |
inlining: read to '@key_hash' on Hash::Entry in #redistribute | |
inlining: Hash#key_index into redistribute (Hash) | |
inlining: Fixnum#& into key_index. primitive fixnum_and | |
inlining: Rubinius::Tuple#[] into redistribute. primitive tuple_at | |
inlining: writer to '@next' on Hash::Entry in #redistribute | |
inlining: Rubinius::Tuple#[]= into redistribute. primitive tuple_put | |
NOT inlining: hash. Cache contains 3 | |
Fixnum 86 | |
Symbol 420 | |
String 136 | |
inlining: Fixnum#& into []=. primitive fixnum_and | |
inlining: Rubinius::Tuple#[] into []=. primitive tuple_at | |
inlining: Hash::Entry#match? into []= (Hash::Entry) | |
inlining: Symbol#=== into match?. primitive symbol_s_eqq | |
inlining: Fixnum#=== into match?. primitive fixnum_s_eqq | |
inlining: primitive fixnum_equal into match?. | |
inlining: String#eql? into match?. generic primitive: jit_stub_string_equal | |
NOT inlining: equal?. Cache contains 2 | |
Symbol 739 | |
Fixnum 53 | |
inlining: read to '@next' on Hash::Entry in #[]= | |
inlining: Hash::Entry#match? into []= (Hash::Entry) | |
inlining: Symbol#=== into match?. primitive symbol_s_eqq | |
inlining: Fixnum#=== into match?. primitive fixnum_s_eqq | |
inlining: primitive fixnum_equal into match?. | |
inlining: String#eql? into match?. generic primitive: jit_stub_string_equal | |
NOT inlining: equal?. Cache contains 2 | |
Symbol 739 | |
Fixnum 53 | |
inlining: writer to '@value' on Hash::Entry in #[]= | |
inlining: read to '@next' on Hash::Entry in #[]= | |
NOT inlining: Hash#new_entry into []=. 544 + 69 > 573 | |
inlining: writer to '@next' on Hash::Entry in #[]= | |
NOT inlining: Hash#new_entry into []=. 544 + 69 > 573 | |
inlining: Rubinius::Tuple#[]= into []=. primitive tuple_put | |
[[[ JIT finished background compiling 1 (method) ]]] | |
JIT: compiling block in Object#__block__ near __unknown__.rb:1 | |
Stack dump: | |
0. Running pass 'Unnamed pass: implement Pass::getPassName()' on function '@0' | |
Error: signal SIGSEGV | |
bin/rbx[0x81c0d82] | |
[0x4f3400] | |
bin/rbx(_ZNK4llvm3Use14getImpliedUserEv+0x28)[0x8924f38] | |
[0x8] | |
bin/rbx(_ZN4llvm11ConstantIntD0Ev+0x0)[0x88af680] | |
[0xe814245c] | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment