bugGNU Octave - Bugs: bug #40608, MinGW: crashes with JIT

 
 

bug #40608: MinGW: crashes with JIT

Submitted by:  Philip Nienhuis <philipnienhuis>
Submitted on:  Sun 17 Nov 2013 12:00:13 PM UTC  
 
Category:  Libraries Severity:  3 - Normal
Priority:  1 - Later Item Group:  Segfault, Bus Error, etc.
Status:  Postponed Assigned to:  None
Originator Name:  Philip Nienhuis Open/Closed:  Open
Release:  dev Operating System:  Microsoft Windows

Add a New Comment (Rich Markup)
   

You are not logged in

Please log in, so followups can be emailed to you.

 

Wed 15 Jan 2014 07:36:45 PM UTC, comment #5: 

A simple example to trigger the segfault. The relevant part is the 'pow' operation.

k=1;
m=1;
while (k<2)
  k=k+1;
  m=m^2;
end

I build gdb and made a backtrace (quick&dirty mxe patch attached). Unfortunately I did not get it managed to build octave with debug symbols. I added C/CXX/FFLAGS=-g, but build failed with many 'undefined reference' errors. However, here is the backtrace without debugging symbols:

octave:3> k=1; m=1; while(k<2), k=k+1; m=m^2; end

Program received signal SIGSEGV, Segmentation fault.
0x77c2137a in msvcrt!modf () from C:\WINDOWS\system32\msvcrt.dll
(gdb) bt
#0  0x77c2137a in msvcrt!modf () from C:\WINDOWS\system32\msvcrt.dll
#1  0x0003336c in ?? ()
#2  0x77c211c0 in msvcrt!modf () from C:\WINDOWS\system32\msvcrt.dll
#3  0x3ff00000 in ?? ()
#4  0x3ff00000 in ?? ()
#5  0x00033368 in ?? ()
#6  0x687742e8 in liboctinterp-2!_ZN15text_parser_tex5parseERKSs () from C:\Portable\octave-2014-01-15-18-35\bin\liboctinterp
#7  0x68925499 in liboctinterp-2!_ZSt3powIdESt7complexIT_ERKS2_RKS1_ () from C:\Portable\octave-2014-01-15-18-35\bin\liboctin
#8  0x68740fda in octave_jit_pow_complex_scalar () from C:\Portable\octave-2014-01-15-18-35\bin\liboctinterp-2.dll
#9  0x0d1700a1 in ?? ()
#10 0x6875c13a in liboctinterp-2!_ZNK8jit_info7executeERKSt3mapISsPK12octave_valueSt4lessISsESaISt4pairIKSsS3_EEE () from C:\
#11 0x68762d64 in liboctinterp-2!_ZN8tree_jit10do_executeER18tree_while_command () from C:\Portable\octave-2014-01-15-18-35\b
#12 0x68762dd8 in liboctinterp-2!_ZN8tree_jit7executeER18tree_while_command () from C:\Portable\octave-2014-01-15-18-35\bin\l
#13 0x683eb8ba in liboctinterp-2!_ZN14tree_evaluator19visit_while_commandER18tree_while_command () from C:\Portable\octave-20
#14 0x683ea385 in liboctinterp-2!_ZN14tree_evaluator15visit_statementER14tree_statement () from C:\Portable\octave-2014-01-15
#15 0x683e9a25 in liboctinterp-2!_ZN14tree_evaluator20visit_statement_listER19tree_statement_list () from C:\Portable\octave-
#16 0x686fb619 in liboctinterp-2!_Z9main_loopv () from C:\Portable\octave-2014-01-15-18-35\bin\liboctinterp-2.dll
#17 0x680c4f96 in octave_execute_interpreter () from C:\Portable\octave-2014-01-15-18-35\bin\liboctinterp-2.dll
#18 0x00401d15 in octave-cli!main ()
(gdb) C:\Portable\octave-2014-01-15-18-35\bin

Even if no segfault occurs, working with complex values fails completely:

k=1;
m=i;
while (1)
  k=m;
  break;
end

m should be unmodified after while loop, but actually it is something 5.2998e-315 (and k as well).

(file #30282)

Stefan Mahr <dac922>
Fri 10 Jan 2014 10:00:47 PM UTC, comment #4: 

Works for me with Linux 3.8.0

Michael Godfrey <godfrey>
Project Member
Fri 10 Jan 2014 09:30:20 PM UTC, comment #3: 

I can make it crash with this:

inc = 1e-5;
result = 0;
for ii = 0:inc:1
  ## the ^ operator's result is complex
  result = result + inc * (1/3 * ii ^ 2);
endfor
assert (abs (result - 1/9) < 1e-5);

I'm using http://www.openems.de/download/octave/octave-3.8.0.exe

Felipe G. Nievinski <fgnievinski>
Mon 18 Nov 2013 08:20:56 PM UTC, comment #2: 

In the meantime, in between the scenes, I'll try to track down exactly where in jit.tst Octave crashes.

In a thread on MinGW builds on the maintainers ML ~2 week ago I already mentioned that test #3 fails (Octave seems to hang there).

Philip Nienhuis <philipnienhuis>
Project Member
Sun 17 Nov 2013 10:35:22 PM UTC, comment #1: 

jit.tst does enable LLVM regardless of the use of the --jit-compiler option so that explains the crashes there.  Given that the JIT compiler is marked experimental for 3.8 I've changed the status to "Postponed".  We need to figure this out sometime, but there are indications on the UNIX side as well that LLVM might have some problems.

Rik <rik5>
Project Administrator
Sun 17 Nov 2013 12:00:13 PM UTC, original submission:  

Running octave-cli-3.7.7+.exe (cs17941:9799a996b2c1, mxe cross-built) in a cmd32.exe window:

X:\Octave\octave-2013-11-16-20-38\bin>octave-cli-3.7.7+.exe --jit-compiler
GNU Octave, version 3.7.7+
Copyright (C) 2013 John W. Eaton and others.
This is free software; see the source code for copying conditions.
There is ABSOLUTELY NO WARRANTY; not even for MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE.  For details, type 'warranty'.

Octave was configured for "i686-pc-mingw32".

Additional information about Octave is available at http://www.octave.org.

Please contribute if you find this software useful.
For more information, visit http://www.octave.org/get-involved.html

Read http://www.octave.org/bugs.html to learn how to submit bug reports.
For information about changes from previous versions, type 'news'.

octave-cli-3.7.7+.exe:1> __run_test_suite__
:
<runs tests OK, until:>
:
  libinterp\corefcn\pinv.cc-tst .......................... PASS    8/8
  libinterp\corefcn\pr-output.cc-tst ..................... PASS    2/2
  libinterp\corefcn\quad.cc-tst .......................... PASS    8/8
  libinterp\corefcn\quadcc.cc-tst ........................
  0x668FE4A9 (0x06D06E78 0x06D2D2E0 0x06D32B30 0x06C81030), octave_jit_grab_matrix() + 0x29 bytes(s)
0x6691A2A9 (0x0022C89C 0x0022C728 0x0022C89C 0x06BD45D0), _ZNK17jit_function_info7executeERK17octave_value_listRS0_() + 0x29 bytes(s)
0x66921EE2 (0x06CCA1F8 0x0022C89C 0x0022C728 0x7C9101DB), _ZN8tree_jit10do_executeER20octave_user_functionRK17octave_value_listRS2_() + 0xA2 bytes(s)
0x66921F36 (0x06CCA1F8 0x0022C89C 0x0022C728 0x7C0001DB), _ZN8tree_jit7executeER20octave_user_functionRK17octave_value_listRS2_() + 0x26 bytes(s)
0x6657CF33 (0x06CCA1F8 0x00000001 0x0022C89C 0x00000000), _ZN20octave_user_function17do_multi_index_opEiRK17octave_value_listPKSt4listI13octave_lvalueSaIS4_EE() + 0x53 bytes(s)
0x66578B1C (0x06CCA1F8 0x00000001 0x0022C89C 0x0022C748), _ZN20octave_user_function17do_multi_index_opEiRK17octave_value_list() + 0x2C bytes(s)
0x665D2475 (0x0022C8EC 0x06CCA1F8 0x0022C89C 0x00000001), _Z5fevalP15octave_functionRK17octave_value_listi() + 0x35 bytes(s)
0x6685B833 (0x0022CA74 0x06C39B60 0x00000001 0x0022CAE8), _Z7FquadccRK17octave_value_listi() + 0x623 bytes(s)
0x66510307 (0x02CDD170 0x00000001 0x06C39B60 0x00000000), _ZN14octave_builtin17do_multi_index_opEiRK17octave_value_listPKSt4listI13octave_lvalueSaIS4_EE() + 0x5F7 bytes(s)
0x6650F4C9 (0x02CDD170 0x0022CD24 0x0022CD78 0x00000001), _ZN14octave_builtin7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEiPKS2_I13octave_lvalueSaIS8_EE() + 0x149 bytes(s)
0x6650FD01 (0x02CDD170 0x0022CD24 0x0022CD78 0x00000001), _ZN14octave_builtin7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEi() + 0x31 bytes(s)
0x669A3840 (0x02CDD170 0x0022CD24 0x0022CD78 0x6FC7FEB6), _ZN14octave_builtin7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EE() + 0x30 bytes(s)
0x6657FC89 (0x0022CD38 0x0022CD24 0x0022CD78 0x00000001), _ZN12octave_value7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEi() + 0x59 bytes(s)
0x6657FD26 (0x0022CD38 0x0022CD24 0x0022CD78 0x00000001), _ZN12octave_value7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEiPKS2_I13octave_lvalueSaIS8_EE() + 0x66 bytes(s)
0x665B294A (0x06D2CEB0 0x00000001 0x00000000 0x00000000), _ZN21tree_index_expression6rvalueEiPKSt4listI13octave_lvalueSaIS1_EE() + 0x3AA bytes(s)
0x665B3083 (0x06D2CEB0 0x00000001 0x0022CCD0 0x0022CEC0), _ZN21tree_index_expression6rvalueEi() + 0x23 bytes(s)
0x665AFE94 (0x06D2CEB0 0x00000001 0x00000006 0x0022D078), _ZN21tree_index_expression7rvalue1Ei() + 0x24 bytes(s)
0x6659EA74 (0x06CEFFB0 0x00000000 0x66C92630 0x00000000), _ZN18tree_argument_list23convert_to_const_vectorEPK12octave_value() + 0x314 bytes(s)
0x665B26F0 (0x06D30A30 0x00000000 0x00000000 0x66990B34), _ZN21tree_index_expression6rvalueEiPKSt4listI13octave_lvalueSaIS1_EE() + 0x150 bytes(s)
0x665B3083 (0x06D30A30 0x00000000 0x02D38FBD 0x02D38FBD), _ZN21tree_index_expression6rvalueEi() + 0x23 bytes(s)
0x665AFE94 (0x06D30A30 0x00000000 0x003E0000 0x00000000), _ZN21tree_index_expression7rvalue1Ei() + 0x24 bytes(s)
0x665AA3FF (0x06CBC770 0x00000000 0x6FCB7A30 0x6FCB7A20), _ZN14tree_evaluator15visit_statementER14tree_statement() + 0xEF bytes(s)
0x665A99E5 (0x06D42F70 0x0022D288 0x00000000 0x0022D2EC), _ZN14tree_evaluator20visit_statement_listER19tree_statement_list() + 0x45 bytes(s)
0x6657D632 (0x06B6DB18 0x00000000 0x06AE2E20 0x00000000), _ZN20octave_user_function17do_multi_index_opEiRK17octave_value_listPKSt4listI13octave_lvalueSaIS4_EE() + 0x752 bytes(s)
0x6657A141 (0x06B6DB18 0x0022D564 0x0022D5B8 0x00000000), _ZN20octave_user_function7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEiPKS2_I13octave_lvalueSaIS8_EE() + 0xB1 bytes(s)
0x6657A2E1 (0x06B6DB18 0x0022D564 0x0022D5B8 0x00000000), _ZN20octave_user_function7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEi() + 0x31 bytes(s)
0x6657FC65 (0x0022D578 0x0022D564 0x0022D5B8 0x00000000), _ZN12octave_value7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEi() + 0x35 bytes(s)
0x6657FD26 (0x0022D578 0x0022D564 0x0022D5B8 0x00000000), _ZN12octave_value7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEiPKS2_I13octave_lvalueSaIS8_EE() + 0x66 bytes(s)
0x665B294A (0x06CE22A0 0x00000000 0x00000000 0x0022D73C), _ZN21tree_index_expression6rvalueEiPKSt4listI13octave_lvalueSaIS1_EE() + 0x3AA bytes(s)
0x665B3083 (0x06CE22A0 0x00000000 0x003E0000 0x00000000), _ZN21tree_index_expression6rvalueEi() + 0x23 bytes(s)
0x665DB2A7 (0x0022D7E4 0x0022D7B4 0x00000000 0x0022D7E0), _Z11eval_stringRKSsbRii() + 0x1E7 bytes(s)
0x665DB761 (0x0022D7E0 0x00000000 0x00000000 0x00C7E6C4), _Z11eval_stringRKSsbRi() + 0x1E1 bytes(s)
0x665DB83A (0x0022D8C4 0x06AE27A8 0x00000000 0x66AE1344), _Z5FevalRK17octave_value_listi() + 0xAA bytes(s)
0x66510307 (0x02D074B0 0x00000000 0x06AE27A8 0x00000000), _ZN14octave_builtin17do_multi_index_opEiRK17octave_value_listPKSt4listI13octave_lvalueSaIS4_EE() + 0x5F7 bytes(s)
0x6650F4C9 (0x02D074B0 0x0022DB04 0x0022DB58 0x00000000), _ZN14octave_builtin7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEiPKS2_I13octave_lvalueSaIS8_EE() + 0x149 bytes(s)
0x6650FD01 (0x02D074B0 0x0022DB04 0x0022DB58 0x00000000), _ZN14octave_builtin7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEi() + 0x31 bytes(s)
0x6657FC65 (0x0022DB18 0x0022DB04 0x0022DB58 0x00000000), _ZN12octave_value7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEi() + 0x35 bytes(s)
0x6657FD26 (0x0022DB18 0x0022DB04 0x0022DB58 0x00000000), _ZN12octave_value7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEiPKS2_I13octave_lvalueSaIS8_EE() + 0x66 bytes(s)
0x665B294A (0x0683ECD8 0x00000000 0x00000000 0x0022DCD8), _ZN21tree_index_expression6rvalueEiPKSt4listI13octave_lvalueSaIS1_EE() + 0x3AA bytes(s)
0x665B3083 (0x0683ECD8 0x00000000 0x0683EEF8 0x00000001), _ZN21tree_index_expression6rvalueEi() + 0x23 bytes(s)
0x665AFE94 (0x0683ECD8 0x00000000 0x0022DCE8 0x665AD1D6), _ZN21tree_index_expression7rvalue1Ei() + 0x24 bytes(s)
0x665AA3FF (0x0683EDF8 0x00000009 0x0672A520 0x66E126D4), _ZN14tree_evaluator15visit_statementER14tree_statement() + 0xEF bytes(s)
0x665A99E5 (0x0683E618 0x00000000 0x00000000 0x77C2C3CE), _ZN14tree_evaluator20visit_statement_listER19tree_statement_list() + 0x45 bytes(s)
0x665AA345 (0x0683F938 0x00000000 0x0022DE78 0x6FCAA607), _ZN14tree_evaluator15visit_statementER14tree_statement() + 0x35 bytes(s)
0x665A99E5 (0x0683D0F8 0x0022DE3C 0x00000000 0x0022DE58), _ZN14tree_evaluator20visit_statement_listER19tree_statement_list() + 0x45 bytes(s)
0x665AB43B (0x06841CA0 0x068420B8 0x0022DEB8 0x665AD1D6), _ZN14tree_evaluator23visit_try_catch_commandER22tree_try_catch_command() + 0xDB bytes(s)
0x665AA345 (0x068419C0 0x00000005 0x066C6E88 0x66E126D4), _ZN14tree_evaluator15visit_statementER14tree_statement() + 0x35 bytes(s)
0x665A99E5 (0x06841CD0 0x00000000 0x06A67360 0x0022FFE0), _ZN14tree_evaluator20visit_statement_listER19tree_statement_list() + 0x45 bytes(s)
0x665AA345 (0x068420F8 0x0022DFB4 0x0022DFE4 0x6657EB60), _ZN14tree_evaluator15visit_statementER14tree_statement() + 0x35 bytes(s)
0x665A99E5 (0x068096B8 0x0022DFE4 0x0022FFE0 0x77C35C94), _ZN14tree_evaluator20visit_statement_listER19tree_statement_list() + 0x45 bytes(s)
0x665AA967 (0x06848248 0x00000000 0x003E0000 0x00000000), _ZN14tree_evaluator24visit_simple_for_commandER23tree_simple_for_command() + 0x1E7 bytes(s)
0x665AA345 (0x068481B0 0x00000000 0x6FCB7A30 0x6FCB7A20), _ZN14tree_evaluator15visit_statementER14tree_statement() + 0x35 bytes(s)
0x665A99E5 (0x067F2580 0x0022E138 0x00000004 0x0022E19C), _ZN14tree_evaluator20visit_statement_listER19tree_statement_list() + 0x45 bytes(s)
0x6657D632 (0x0684E1C0 0x00000004 0x06A9C588 0x0022E51C), _ZN20octave_user_function17do_multi_index_opEiRK17octave_value_listPKSt4listI13octave_lvalueSaIS4_EE() + 0x752 bytes(s)
0x6657A141 (0x0684E1C0 0x0022E3A4 0x0022E3F8 0x00000004), _ZN20octave_user_function7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEiPKS2_I13octave_lvalueSaIS8_EE() + 0xB1 bytes(s)
0x6657FCF8 (0x0022E3B8 0x0022E3A4 0x0022E3F8 0x00000004), _ZN12octave_value7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEiPKS2_I13octave_lvalueSaIS8_EE() + 0x38 bytes(s)
0x665B294A (0x067EDA88 0x00000004 0x0022E51C 0x067E97F0), _ZN21tree_index_expression6rvalueEiPKSt4listI13octave_lvalueSaIS1_EE() + 0x3AA bytes(s)
0x665A01B8 (0x067EE4F0 0x00000000 0x00000038 0x067EC018), _ZN21tree_multi_assignment6rvalueEi() + 0x98 bytes(s)
0x6659FC9C (0x067EE4F0 0x00000000 0x0022E6A8 0x665AD1D6), _ZN21tree_multi_assignment7rvalue1Ei() + 0x3C bytes(s)
0x665AA3FF (0x067EE6C0 0x00000007 0x06766270 0x66E126D4), _ZN14tree_evaluator15visit_statementER14tree_statement() + 0xEF bytes(s)
0x665A99E5 (0x067EBF98 0x00000000 0x0022E728 0x665AD1D6), _ZN14tree_evaluator20visit_statement_listER19tree_statement_list() + 0x45 bytes(s)
0x665AA345 (0x067F0230 0x00000005 0x06766730 0x66E126D4), _ZN14tree_evaluator15visit_statementER14tree_statement() + 0x35 bytes(s)
0x665A99E5 (0x067E8688 0x00000000 0x068AB940 0x0022FFE0), _ZN14tree_evaluator20visit_statement_listER19tree_statement_list() + 0x45 bytes(s)
0x665AA345 (0x067F0310 0x0022E824 0x0022E854 0x6657EB60), _ZN14tree_evaluator15visit_statementER14tree_statement() + 0x35 bytes(s)
0x665A99E5 (0x067E7538 0x0022E854 0x77C2C2E3 0x66985420), _ZN14tree_evaluator20visit_statement_listER19tree_statement_list() + 0x45 bytes(s)
0x665AA967 (0x067F03A8 0x00000000 0x003E0000 0x00000000), _ZN14tree_evaluator24visit_simple_for_commandER23tree_simple_for_command() + 0x1E7 bytes(s)
0x665AA345 (0x067F03E0 0x00000000 0x6FCB7A30 0x6FCB7A20), _ZN14tree_evaluator15visit_statementER14tree_statement() + 0x35 bytes(s)
0x665A99E5 (0x067E1108 0x0022E9A8 0x00000004 0x0022EA0C), _ZN14tree_evaluator20visit_statement_listER19tree_statement_list() + 0x45 bytes(s)
0x6657D632 (0x067F0510 0x00000004 0x066D0D00 0x0022ED8C), _ZN20octave_user_function17do_multi_index_opEiRK17octave_value_listPKSt4listI13octave_lvalueSaIS4_EE() + 0x752 bytes(s)
0x6657A141 (0x067F0510 0x0022EC14 0x0022EC68 0x00000004), _ZN20octave_user_function7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEiPKS2_I13octave_lvalueSaIS8_EE() + 0xB1 bytes(s)
0x6657FCF8 (0x0022EC28 0x0022EC14 0x0022EC68 0x00000004), _ZN12octave_value7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEiPKS2_I13octave_lvalueSaIS8_EE() + 0x38 bytes(s)
0x665B294A (0x067E4AC0 0x00000004 0x0022ED8C 0x665801F7), _ZN21tree_index_expression6rvalueEiPKSt4listI13octave_lvalueSaIS1_EE() + 0x3AA bytes(s)
0x665A01B8 (0x067E4E70 0x00000000 0x067E6BD0 0x00000001), _ZN21tree_multi_assignment6rvalueEi() + 0x98 bytes(s)
0x6659FC9C (0x067E4E70 0x00000000 0x0022EF18 0x665AD1D6), _ZN21tree_multi_assignment7rvalue1Ei() + 0x3C bytes(s)
0x665AA3FF (0x067E6620 0x00000005 0x06760140 0x66E126D4), _ZN14tree_evaluator15visit_statementER14tree_statement() + 0xEF bytes(s)
0x665A99E5 (0x067E6648 0x00000000 0x0688A7A0 0x0022FFE0), _ZN14tree_evaluator20visit_statement_listER19tree_statement_list() + 0x45 bytes(s)
0x665AA345 (0x067E6FA0 0x0022F014 0x0022F044 0x6657EB60), _ZN14tree_evaluator15visit_statementER14tree_statement() + 0x35 bytes(s)
0x665A99E5 (0x067E3F10 0x0022F044 0x77C2C2E3 0x66985420), _ZN14tree_evaluator20visit_statement_listER19tree_statement_list() + 0x45 bytes(s)
0x665AA967 (0x067E7038 0x00000000 0x003E0000 0x00000000), _ZN14tree_evaluator24visit_simple_for_commandER23tree_simple_for_command() + 0x1E7 bytes(s)
0x665AA345 (0x067E7070 0x00000000 0x6FCB7A30 0x6FCB7A20), _ZN14tree_evaluator15visit_statementER14tree_statement() + 0x35 bytes(s)
0x665A99E5 (0x067E1108 0x0022F198 0x00000004 0x0022F1FC), _ZN14tree_evaluator20visit_statement_listER19tree_statement_list() + 0x45 bytes(s)
0x6657D632 (0x067F0510 0x00000004 0x065DAB18 0x0022F57C), _ZN20octave_user_function17do_multi_index_opEiRK17octave_value_listPKSt4listI13octave_lvalueSaIS4_EE() + 0x752 bytes(s)
0x6657A141 (0x067F0510 0x0022F404 0x0022F458 0x00000004), _ZN20octave_user_function7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEiPKS2_I13octave_lvalueSaIS8_EE() + 0xB1 bytes(s)
0x6657FCF8 (0x0022F418 0x0022F404 0x0022F458 0x00000004), _ZN12octave_value7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEiPKS2_I13octave_lvalueSaIS8_EE() + 0x38 bytes(s)
0x665B294A (0x067AF898 0x00000004 0x0022F57C 0x067AF160), _ZN21tree_index_expression6rvalueEiPKSt4listI13octave_lvalueSaIS1_EE() + 0x3AA bytes(s)
0x665A01B8 (0x067ADB88 0x00000000 0x66C99E88 0x067DF808), _ZN21tree_multi_assignment6rvalueEi() + 0x98 bytes(s)
0x6659FC9C (0x067ADB88 0x00000000 0x067AF160 0x0022FFE0), _ZN21tree_multi_assignment7rvalue1Ei() + 0x3C bytes(s)
0x665AA3FF (0x067AF988 0x0022F784 0x0022F7B4 0x6657EB60), _ZN14tree_evaluator15visit_statementER14tree_statement() + 0xEF bytes(s)
0x665A99E5 (0x067AF938 0x0022F7B4 0x00000003 0x06744C18), _ZN14tree_evaluator20visit_statement_listER19tree_statement_list() + 0x45 bytes(s)
0x665AA967 (0x067B0370 0x00000000 0x00000000 0x77C2C3CE), _ZN14tree_evaluator24visit_simple_for_commandER23tree_simple_for_command() + 0x1E7 bytes(s)
0x665AA345 (0x067AFFA0 0x00000000 0x0022F998 0x6FCAA607), _ZN14tree_evaluator15visit_statementER14tree_statement() + 0x35 bytes(s)
0x665A99E5 (0x067AA6A0 0x00000001 0x00000000 0x0022F958), _ZN14tree_evaluator20visit_statement_listER19tree_statement_list() + 0x45 bytes(s)
0x665AB43B (0x067BE240 0x00000000 0x003E0000 0x00000000), _ZN14tree_evaluator23visit_try_catch_commandER22tree_try_catch_command() + 0xDB bytes(s)
0x665AA345 (0x067BEDD8 0x00000000 0x6FCB7A30 0x6FCB7A20), _ZN14tree_evaluator15visit_statementER14tree_statement() + 0x35 bytes(s)
0x665A99E5 (0x06783CA8 0x0022FA58 0x00000000 0x0022FABC), _ZN14tree_evaluator20visit_statement_listER19tree_statement_list() + 0x45 bytes(s)
0x6657D632 (0x067BEEE8 0x00000000 0x0022FC78 0x00000000), _ZN20octave_user_function17do_multi_index_opEiRK17octave_value_listPKSt4listI13octave_lvalueSaIS4_EE() + 0x752 bytes(s)
0x66578B1C (0x067BEEE8 0x00000000 0x0022FC78 0x0022FCF8), _ZN20octave_user_function17do_multi_index_opEiRK17octave_value_list() + 0x2C bytes(s)
0x6657FD67 (0x0022FC20 0x00000000 0x0022FC78 0x0022FC3C), _ZN12octave_value17do_multi_index_opEiRK17octave_value_list() + 0x27 bytes(s)
0x665AF880 (0x02D45F38 0x00000000 0x00000000 0x6FCAB809), _ZN15tree_identifier6rvalueEiPKSt4listI13octave_lvalueSaIS1_EE() + 0x870 bytes(s)
0x669AC585 (0x02D45F38 0x00000000 0x0022FCFC 0xFFFFFFFF), _ZN15tree_identifier6rvalueEi() + 0x25 bytes(s)
0x665AE9E0 (0x02D45F38 0x00000000 0x66C92630 0x00000000), _ZN15tree_identifier7rvalue1Ei() + 0x40 bytes(s)
0x665AA3FF (0x02D45FA8 0x0022FEC8 0x0022FE08 0x665D99A3), _ZN14tree_evaluator15visit_statementER14tree_statement() + 0xEF bytes(s)
0x665A99E5 (0x02D45FD0 0x0000000E 0x02B8884C 0x0022FE60), _ZN14tree_evaluator20visit_statement_listER19tree_statement_list() + 0x45 bytes(s)
0x668BAF79 (0x00000001 0x0022FEC8 0x0022FE64 0x0022FE6C), _Z9main_loopv() + 0x139 bytes(s)
0x66284F46 (0x00000002 0x02B8E5B0 0x00000000 0x7FFDF000), octave_execute_interpreter() + 0x586 bytes(s)
0x00401D15 (0x00000002 0x02B8E5B0 0x003E2AA0 0x00405000)
0x004010FD (0x00401280 0x00000000 0x78746341 0x00000020)
panic: Segmentation violation -- stopping myself...

X:\Octave\octave-2013-11-16-20-38\bin>

If I run octave-cli without the --jit-compiler switch, a crash occurs when _run_test_suite_ processes jit.tst.
Initially Octave seems to hang forever, but that's not the case. Instead, after 10-15 minutes, it segfaults:

  jit.tst ................................................
0x77C50CCC (0x08B971E0 0x0022D7C8 0x093CA410 0x0022D748), modf() + 0x46C bytes(s)
0x6691B96A (0x0022D7C8 0x0917E238 0x0022D854 0x091D4E58), _ZNK8jit_info7executeERKSt3mapISsPK12octave_valueSt4lessISsESaISt4pairIKSsS3_EEE() + 0x3A bytes(s)
0x6692286B (0x0917E238 0x0022D854 0x7C910060 0x0917E238), _ZN8tree_jit10do_executeER23tree_simple_for_commandRK12octave_value() + 0x1BB bytes(s)
0x6692295F (0x0917E238 0x0022D854 0x0022D8CC 0x0936FD00), _ZN8tree_jit7executeER23tree_simple_for_commandRK12octave_value() + 0x1F bytes(s)
0x665AA81D (0x0917E238 0x00000000 0x003E0000 0x00000000), _ZN14tree_evaluator24visit_simple_for_commandER23tree_simple_for_command() + 0x9D bytes(s)
0x665AA345 (0x0920A238 0x00000000 0x6FCB7A30 0x6FCB7A20), _ZN14tree_evaluator15visit_statementER14tree_statement() + 0x35 bytes(s)
0x665A99E5 (0x091A5A58 0x0022D9D8 0x00000000 0x0022DA3C), _ZN14tree_evaluator20visit_statement_listER19tree_statement_list() + 0x45 bytes(s)
0x6657D632 (0x0936FCF0 0x00000000 0x09377A18 0x00000000), _ZN20octave_user_function17do_multi_index_opEiRK17octave_value_listPKSt4listI13octave_lvalueSaIS4_EE() + 0x752 bytes(s)
0x6657A141 (0x0936FCF0 0x0022DCB4 0x0022DD08 0x00000000), _ZN20octave_user_function7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEiPKS2_I13octave_lvalueSaIS8_EE() + 0xB1 bytes(s)
0x6657A2E1 (0x0936FCF0 0x0022DCB4 0x0022DD08 0x00000000), _ZN20octave_user_function7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEi() + 0x31 bytes(s)
0x6657FC65 (0x0022DCC8 0x0022DCB4 0x0022DD08 0x00000000), _ZN12octave_value7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEi() + 0x35 bytes(s)
0x6657FD26 (0x0022DCC8 0x0022DCB4 0x0022DD08 0x00000000), _ZN12octave_value7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEiPKS2_I13octave_lvalueSaIS8_EE() + 0x66 bytes(s)
0x665B294A (0x092BE488 0x00000000 0x00000000 0x0022DE8C), _ZN21tree_index_expression6rvalueEiPKSt4listI13octave_lvalueSaIS1_EE() + 0x3AA bytes(s)
0x665B3083 (0x092BE488 0x00000000 0x003E0000 0x00000000), _ZN21tree_index_expression6rvalueEi() + 0x23 bytes(s)
0x665DB2A7 (0x0022DF34 0x0022DF04 0x00000000 0x0022DF30), _Z11eval_stringRKSsbRii() + 0x1E7 bytes(s)
0x665DB761 (0x0022DF30 0x00000000 0x00000000 0x00C7E6C4), _Z11eval_stringRKSsbRi() + 0x1E1 bytes(s)
0x665DB83A (0x0022E014 0x09148200 0x00000000 0x66ACBD94), _Z5FevalRK17octave_value_listi() + 0xAA bytes(s)
0x66510307 (0x02D07490 0x00000000 0x09148200 0x00000000), _ZN14octave_builtin17do_multi_index_opEiRK17octave_value_listPKSt4listI13octave_lvalueSaIS4_EE() + 0x5F7 bytes(s)
0x6650F4C9 (0x02D07490 0x0022E254 0x0022E2A8 0x00000000), _ZN14octave_builtin7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEiPKS2_I13octave_lvalueSaIS8_EE() + 0x149 bytes(s)
0x6650FD01 (0x02D07490 0x0022E254 0x0022E2A8 0x00000000), _ZN14octave_builtin7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEi() + 0x31 bytes(s)
0x6657FC65 (0x0022E268 0x0022E254 0x0022E2A8 0x00000000), _ZN12octave_value7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEi() + 0x35 bytes(s)
0x6657FD26 (0x0022E268 0x0022E254 0x0022E2A8 0x00000000), _ZN12octave_value7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEiPKS2_I13octave_lvalueSaIS8_EE() + 0x66 bytes(s)
0x665B294A (0x0683F148 0x00000000 0x00000000 0x0022E428), _ZN21tree_index_expression6rvalueEiPKSt4listI13octave_lvalueSaIS1_EE() + 0x3AA bytes(s)
0x665B3083 (0x0683F148 0x00000000 0x0683F368 0x00000001), _ZN21tree_index_expression6rvalueEi() + 0x23 bytes(s)
0x665AFE94 (0x0683F148 0x00000000 0x0022E438 0x665AD1D6), _ZN21tree_index_expression7rvalue1Ei() + 0x24 bytes(s)
0x665AA3FF (0x0683F268 0x00000009 0x06734430 0x66E126D4), _ZN14tree_evaluator15visit_statementER14tree_statement() + 0xEF bytes(s)
0x665A99E5 (0x0683EA88 0x00000000 0x00000000 0x77C2C3CE), _ZN14tree_evaluator20visit_statement_listER19tree_statement_list() + 0x45 bytes(s)
0x665AA345 (0x0683FDA8 0x00000000 0x0022E5C8 0x6FCAA607), _ZN14tree_evaluator15visit_statementER14tree_statement() + 0x35 bytes(s)
0x665A99E5 (0x0683D568 0x0022E58C 0x00000000 0x0022E5A8), _ZN14tree_evaluator20visit_statement_listER19tree_statement_list() + 0x45 bytes(s)
0x665AB43B (0x068420F0 0x06842508 0x0022E608 0x665AD1D6), _ZN14tree_evaluator23visit_try_catch_commandER22tree_try_catch_command() + 0xDB bytes(s)
0x665AA345 (0x06841E10 0x00000005 0x06729978 0x66E126D4), _ZN14tree_evaluator15visit_statementER14tree_statement() + 0x35 bytes(s)
0x665A99E5 (0x06842120 0x00000000 0x66C99E88 0x0022FFE0), _ZN14tree_evaluator20visit_statement_listER19tree_statement_list() + 0x45 bytes(s)
0x665AA345 (0x06842548 0x0022E704 0x0022E734 0x6657EB60), _ZN14tree_evaluator15visit_statementER14tree_statement() + 0x35 bytes(s)
0x665A99E5 (0x06809B20 0x0022E734 0x0022FFE0 0x77C35C94), _ZN14tree_evaluator20visit_statement_listER19tree_statement_list() + 0x45 bytes(s)
0x665AA967 (0x06848528 0x00000000 0x003E0000 0x00000000), _ZN14tree_evaluator24visit_simple_for_commandER23tree_simple_for_command() + 0x1E7 bytes(s)
0x665AA345 (0x06848490 0x00000000 0x6FCB7A30 0x6FCB7A20), _ZN14tree_evaluator15visit_statementER14tree_statement() + 0x35 bytes(s)
0x665A99E5 (0x067F24A0 0x0022E888 0x00000004 0x0022E8EC), _ZN14tree_evaluator20visit_statement_listER19tree_statement_list() + 0x45 bytes(s)
0x6657D632 (0x06805F78 0x00000004 0x09287338 0x0022EC6C), _ZN20octave_user_function17do_multi_index_opEiRK17octave_value_listPKSt4listI13octave_lvalueSaIS4_EE() + 0x752 bytes(s)
0x6657A141 (0x06805F78 0x0022EAF4 0x0022EB48 0x00000004), _ZN20octave_user_function7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEiPKS2_I13octave_lvalueSaIS8_EE() + 0xB1 bytes(s)
0x6657FCF8 (0x0022EB08 0x0022EAF4 0x0022EB48 0x00000004), _ZN12octave_value7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEiPKS2_I13octave_lvalueSaIS8_EE() + 0x38 bytes(s)
0x665B294A (0x067DCD20 0x00000004 0x0022EC6C 0x7C9100B8), _ZN21tree_index_expression6rvalueEiPKSt4listI13octave_lvalueSaIS1_EE() + 0x3AA bytes(s)
0x665A01B8 (0x067DD7E0 0x00000000 0x067DE660 0x00000001), _ZN21tree_multi_assignment6rvalueEi() + 0x98 bytes(s)
0x6659FC9C (0x067DD7E0 0x00000000 0x0022EDF8 0x665AD1D6), _ZN21tree_multi_assignment7rvalue1Ei() + 0x3C bytes(s)
0x665AA3FF (0x067DD9B0 0x00000009 0x067DE510 0x66E126D4), _ZN14tree_evaluator15visit_statementER14tree_statement() + 0xEF bytes(s)
0x665A99E5 (0x067DCB48 0x00000000 0x0022EE78 0x665AD1D6), _ZN14tree_evaluator20visit_statement_listER19tree_statement_list() + 0x45 bytes(s)
0x665AA345 (0x067DEBF8 0x00000007 0x067542E0 0x66E126D4), _ZN14tree_evaluator15visit_statementER14tree_statement() + 0x35 bytes(s)
0x665A99E5 (0x067D9EE0 0x00000000 0x66C99E88 0x0022FFE0), _ZN14tree_evaluator20visit_statement_listER19tree_statement_list() + 0x45 bytes(s)
0x665AA345 (0x067DF508 0x0022EF74 0x0022EFA4 0x6657EB60), _ZN14tree_evaluator15visit_statementER14tree_statement() + 0x35 bytes(s)
0x665A99E5 (0x067D9A90 0x0022EFA4 0x003EEA00 0x66BD25B0), _ZN14tree_evaluator20visit_statement_listER19tree_statement_list() + 0x45 bytes(s)
0x665AA967 (0x067DF5C0 0x00000000 0x00000000 0x0022F108), _ZN14tree_evaluator24visit_simple_for_commandER23tree_simple_for_command() + 0x1E7 bytes(s)
0x665AA345 (0x067DF308 0x3FF00000 0x00000037 0x067D7740), _ZN14tree_evaluator15visit_statementER14tree_statement() + 0x35 bytes(s)
0x665A99E5 (0x067D9548 0x00000007 0x0022F024 0x067D7EC8), _ZN14tree_evaluator20visit_statement_listER19tree_statement_list() + 0x45 bytes(s)
0x665AC11F (0x067DED60 0x00000000 0x003E0000 0x00000000), _ZN14tree_evaluator28visit_unwind_protect_commandER27tree_unwind_protect_command() + 0x1F bytes(s)
0x665AA345 (0x067DF7F8 0x00000000 0x6FCB7A30 0x6FCB7A20), _ZN14tree_evaluator15visit_statementER14tree_statement() + 0x35 bytes(s)
0x665A99E5 (0x067D23A0 0x0022F198 0x00000004 0x0022F1FC), _ZN14tree_evaluator20visit_statement_listER19tree_statement_list() + 0x45 bytes(s)
0x6657D632 (0x067DFEA8 0x00000004 0x0903B678 0x0022F57C), _ZN20octave_user_function17do_multi_index_opEiRK17octave_value_listPKSt4listI13octave_lvalueSaIS4_EE() + 0x752 bytes(s)
0x6657A141 (0x067DFEA8 0x0022F404 0x0022F458 0x00000004), _ZN20octave_user_function7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEiPKS2_I13octave_lvalueSaIS8_EE() + 0xB1 bytes(s)
0x6657FCF8 (0x0022F418 0x0022F404 0x0022F458 0x00000004), _ZN12octave_value7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEiPKS2_I13octave_lvalueSaIS8_EE() + 0x38 bytes(s)
0x665B294A (0x067B1D38 0x00000004 0x0022F57C 0x7C9100B8), _ZN21tree_index_expression6rvalueEiPKSt4listI13octave_lvalueSaIS1_EE() + 0x3AA bytes(s)
0x665A01B8 (0x067B11A0 0x00000000 0x66C99E88 0x02B823E8), _ZN21tree_multi_assignment6rvalueEi() + 0x98 bytes(s)
0x6659FC9C (0x067B11A0 0x00000000 0x66C99E88 0x069540E0), _ZN21tree_multi_assignment7rvalue1Ei() + 0x3C bytes(s)
0x665AA3FF (0x067B1E50 0x0022F784 0x0022F748 0x6692295F), _ZN14tree_evaluator15visit_statementER14tree_statement() + 0xEF bytes(s)
0x665A99E5 (0x067B1DD8 0x0022F784 0x0022FFE0 0x77C35C94), _ZN14tree_evaluator20visit_statement_listER19tree_statement_list() + 0x45 bytes(s)
0x665AA9EC (0x067B2798 0x00000000 0x00000000 0x77C2C3CE), _ZN14tree_evaluator24visit_simple_for_commandER23tree_simple_for_command() + 0x26C bytes(s)
0x665AA345 (0x067B23C8 0x00000000 0x0022F998 0x6FCAA607), _ZN14tree_evaluator15visit_statementER14tree_statement() + 0x35 bytes(s)
0x665A99E5 (0x067AAFF0 0x00000001 0x00000000 0x0022F958), _ZN14tree_evaluator20visit_statement_listER19tree_statement_list() + 0x45 bytes(s)
0x665AB43B (0x067BE7F0 0x00000000 0x003E0000 0x00000000), _ZN14tree_evaluator23visit_try_catch_commandER22tree_try_catch_command() + 0xDB bytes(s)
0x665AA345 (0x067BF388 0x00000000 0x6FCB7A30 0x6FCB7A20), _ZN14tree_evaluator15visit_statementER14tree_statement() + 0x35 bytes(s)
0x665A99E5 (0x02D43D78 0x0022FA58 0x00000000 0x0022FABC), _ZN14tree_evaluator20visit_statement_listER19tree_statement_list() + 0x45 bytes(s)
0x6657D632 (0x067BF498 0x00000000 0x0022FC78 0x00000000), _ZN20octave_user_function17do_multi_index_opEiRK17octave_value_listPKSt4listI13octave_lvalueSaIS4_EE() + 0x752 bytes(s)
0x66578B1C (0x067BF498 0x00000000 0x0022FC78 0x0022FCF8), _ZN20octave_user_function17do_multi_index_opEiRK17octave_value_list() + 0x2C bytes(s)
0x6657FD67 (0x0022FC20 0x00000000 0x0022FC78 0x0022FC3C), _ZN12octave_value17do_multi_index_opEiRK17octave_value_list() + 0x27 bytes(s)
0x665AF880 (0x02D3B140 0x00000000 0x00000000 0x6FCAB809), _ZN15tree_identifier6rvalueEiPKSt4listI13octave_lvalueSaIS1_EE() + 0x870 bytes(s)
0x669AC585 (0x02D3B140 0x00000000 0x0022FCFC 0xFFFFFFFF), _ZN15tree_identifier6rvalueEi() + 0x25 bytes(s)
0x665AE9E0 (0x02D3B140 0x00000000 0x66C92630 0x00000000), _ZN15tree_identifier7rvalue1Ei() + 0x40 bytes(s)
0x665AA3FF (0x02D3B1B0 0x0022FEC8 0x0022FE08 0x665D99A3), _ZN14tree_evaluator15visit_statementER14tree_statement() + 0xEF bytes(s)
0x665A99E5 (0x02D3B1D8 0x0022FDE4 0x02B84B9C 0x0022FE60), _ZN14tree_evaluator20visit_statement_listER19tree_statement_list() + 0x45 bytes(s)
0x668BAF79 (0x00000001 0x0022FEC8 0x0022FE64 0x0022FE6C), _Z9main_loopv() + 0x139 bytes(s)
0x66284F46 (0x00000001 0x02B7EFC8 0x00000000 0x7FFDB000), octave_execute_interpreter() + 0x586 bytes(s)
0x00401D15 (0x00000001 0x02B7EFC8 0x003E2AB8 0x00405000)
0x004010FD (0x00401280 0x00000000 0x78746341 0x00000020)

X:\Octave\octave-2013-11-16-20-38\bin>

So with or without the --jit-compiler flag, LLVM-enabled mxe-built Octave binaries for MinGW appear unstable. I know (suspect) that in jit.tst is enabled (apparently overriding the start-up flag).
I have a fairly up-to-date mxe-octave (3286:29e227f8bef6 Don't depend on build-m4/buid-xz for and native-MinGW); it includes LLVM 3.3.

On a positive note, since few days I see no more FAILs at all in the "Integrated test scripts" section (running _run_test_suite_.m). That's the first time since I started building Octave for MinGW some 3 or 4 years ago. Nice!

Philip Nienhuis <philipnienhuis>
Project Member

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

Attached Files
file #30282:  mxe-gdb.diff added by dac922 (4KiB - text/x-patch)

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by dac922 (Updated the item)
  • -email is unavailable- added by godfrey (Posted a comment)
  • -email is unavailable- added by fgnievinski (Posted a comment)
  • -email is unavailable- added by rik5 (Posted a comment)
  • -email is unavailable- added by philipnienhuis (Submitted the item)
  •  

    Do you think this task is very important?
    If so, you can add your encouragement to it.
    This task has 0 encouragements so far.

    Only project members can vote.

     

     

     

    Follow 3 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2015-04-25 rik5 Priority5 - Normal => 1 - Later
    2014-01-15 dac922 Attached File- => Added mxe-gdb.diff, #30282
    2013-11-17 rik5 StatusNone => Postponed

    Back to the top


    Powered by Savane 3.5