Skip to content

Internal BoundsError in the compiler (in getfield_elim_pass!) #37182

@iamed2

Description

@iamed2
Julia Version 1.6.0-DEV.706
Commit 92248d213e (2020-08-24 02:31 UTC)
Platform Info:
  OS: Linux (x86_64-pc-linux-gnu)
  CPU: Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-9.0.1 (ORCJIT, skylake-avx512)
Internal error: encountered unexpected error in runtime:
BoundsError(a=Array{UInt64, (31,)}[0x0000000000000001, 0x0000000000000002, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0x0000000000000003, 0x0000000000000004, 0x0000000000000005, 0x0000000000000000, 0x0000000000000006, 0x0000000000000007, 0x0000000000000000, 0x0000000000000008, 0x0000000000000009, 0x0000000000000000], i=(32,))
jl_bounds_error_ints at /buildworker/worker/package_linux64/build/src/rtutils.c:183
getindex at ./array.jl:809 [inlined]
getindex at ./abstractarray.jl:1122 [inlined]
DFS at ./compiler/ssair/domtree.jl:197
SNCA at ./compiler/ssair/domtree.jl:269
construct_domtree at ./compiler/ssair/domtree.jl:121
getfield_elim_pass! at ./compiler/ssair/passes.jl:729
run_passes at ./compiler/ssair/driver.jl:131
optimize at ./compiler/optimize.jl:172
typeinf at ./compiler/typeinfer.jl:35
typeinf_edge at ./compiler/typeinfer.jl:536
abstract_call_method at ./compiler/abstractinterpretation.jl:465
abstract_call_gf_by_type at ./compiler/abstractinterpretation.jl:129
abstract_call_known at ./compiler/abstractinterpretation.jl:1003
abstract_call at ./compiler/abstractinterpretation.jl:1026
abstract_call at ./compiler/abstractinterpretation.jl:1010
abstract_eval_statement at ./compiler/abstractinterpretation.jl:1132
typeinf_local at ./compiler/abstractinterpretation.jl:1388
typeinf_nocycle at ./compiler/abstractinterpretation.jl:1444
typeinf at ./compiler/typeinfer.jl:12
typeinf_edge at ./compiler/typeinfer.jl:536
abstract_call_method at ./compiler/abstractinterpretation.jl:465
abstract_call_gf_by_type at ./compiler/abstractinterpretation.jl:129
abstract_call_known at ./compiler/abstractinterpretation.jl:1003
abstract_call at ./compiler/abstractinterpretation.jl:1026
abstract_call at ./compiler/abstractinterpretation.jl:1010
abstract_eval_statement at ./compiler/abstractinterpretation.jl:1132
typeinf_local at ./compiler/abstractinterpretation.jl:1388
typeinf_nocycle at ./compiler/abstractinterpretation.jl:1444
typeinf at ./compiler/typeinfer.jl:12
typeinf_edge at ./compiler/typeinfer.jl:536
abstract_call_method at ./compiler/abstractinterpretation.jl:465
abstract_call_gf_by_type at ./compiler/abstractinterpretation.jl:129
abstract_call_known at ./compiler/abstractinterpretation.jl:1003
abstract_call at ./compiler/abstractinterpretation.jl:1026
abstract_call at ./compiler/abstractinterpretation.jl:1010
abstract_eval_statement at ./compiler/abstractinterpretation.jl:1132
typeinf_local at ./compiler/abstractinterpretation.jl:1373
typeinf_nocycle at ./compiler/abstractinterpretation.jl:1444
typeinf at ./compiler/typeinfer.jl:12
typeinf_edge at ./compiler/typeinfer.jl:536
abstract_call_method at ./compiler/abstractinterpretation.jl:465
abstract_call_gf_by_type at ./compiler/abstractinterpretation.jl:129
abstract_call_known at ./compiler/abstractinterpretation.jl:1003
abstract_call at ./compiler/abstractinterpretation.jl:1026
abstract_call at ./compiler/abstractinterpretation.jl:1010
abstract_eval_statement at ./compiler/abstractinterpretation.jl:1132
typeinf_local at ./compiler/abstractinterpretation.jl:1388
typeinf_nocycle at ./compiler/abstractinterpretation.jl:1444
typeinf at ./compiler/typeinfer.jl:12
typeinf_edge at ./compiler/typeinfer.jl:536
abstract_call_method at ./compiler/abstractinterpretation.jl:465
abstract_call_gf_by_type at ./compiler/abstractinterpretation.jl:129
abstract_call_known at ./compiler/abstractinterpretation.jl:1003
abstract_call at ./compiler/abstractinterpretation.jl:1026
abstract_call at ./compiler/abstractinterpretation.jl:1010
abstract_eval_statement at ./compiler/abstractinterpretation.jl:1132
typeinf_local at ./compiler/abstractinterpretation.jl:1388
typeinf_nocycle at ./compiler/abstractinterpretation.jl:1444
typeinf at ./compiler/typeinfer.jl:12
typeinf_edge at ./compiler/typeinfer.jl:536
abstract_call_method at ./compiler/abstractinterpretation.jl:465
abstract_call_gf_by_type at ./compiler/abstractinterpretation.jl:129
abstract_call_known at ./compiler/abstractinterpretation.jl:1003
abstract_call at ./compiler/abstractinterpretation.jl:1026
abstract_call at ./compiler/abstractinterpretation.jl:1010
abstract_eval_statement at ./compiler/abstractinterpretation.jl:1132
typeinf_local at ./compiler/abstractinterpretation.jl:1388
typeinf_nocycle at ./compiler/abstractinterpretation.jl:1444
typeinf at ./compiler/typeinfer.jl:12
typeinf_edge at ./compiler/typeinfer.jl:536
abstract_call_method at ./compiler/abstractinterpretation.jl:465
abstract_call_gf_by_type at ./compiler/abstractinterpretation.jl:129
abstract_call_known at ./compiler/abstractinterpretation.jl:1003
abstract_call at ./compiler/abstractinterpretation.jl:1026
abstract_call at ./compiler/abstractinterpretation.jl:1010
abstract_eval_statement at ./compiler/abstractinterpretation.jl:1132
typeinf_local at ./compiler/abstractinterpretation.jl:1388
typeinf_nocycle at ./compiler/abstractinterpretation.jl:1444
typeinf at ./compiler/typeinfer.jl:12
typeinf_edge at ./compiler/typeinfer.jl:536
abstract_call_method at ./compiler/abstractinterpretation.jl:465
abstract_call_gf_by_type at ./compiler/abstractinterpretation.jl:129
abstract_call_known at ./compiler/abstractinterpretation.jl:1003
abstract_call at ./compiler/abstractinterpretation.jl:1026
abstract_call at ./compiler/abstractinterpretation.jl:1010
abstract_eval_statement at ./compiler/abstractinterpretation.jl:1132
typeinf_local at ./compiler/abstractinterpretation.jl:1373
typeinf_nocycle at ./compiler/abstractinterpretation.jl:1444
typeinf at ./compiler/typeinfer.jl:12
typeinf_edge at ./compiler/typeinfer.jl:536
abstract_call_method at ./compiler/abstractinterpretation.jl:465
abstract_call_gf_by_type at ./compiler/abstractinterpretation.jl:129
abstract_call_known at ./compiler/abstractinterpretation.jl:1003
abstract_call at ./compiler/abstractinterpretation.jl:1026
abstract_call at ./compiler/abstractinterpretation.jl:1010
abstract_eval_statement at ./compiler/abstractinterpretation.jl:1132
typeinf_local at ./compiler/abstractinterpretation.jl:1388
typeinf_nocycle at ./compiler/abstractinterpretation.jl:1444
typeinf at ./compiler/typeinfer.jl:12
typeinf_ext at ./compiler/typeinfer.jl:623
typeinf_ext_toplevel at ./compiler/typeinfer.jl:656
typeinf_ext_toplevel at ./compiler/typeinfer.jl:652
jfptr_typeinf_ext_toplevel_9597 at /usr/local/julia/lib/julia/sys.so (unknown line)
jl_apply at /buildworker/worker/package_linux64/build/src/julia.h:1753 [inlined]
jl_type_infer at /buildworker/worker/package_linux64/build/src/gf.c:300
jl_generate_fptr at /buildworker/worker/package_linux64/build/src/jitlayers.cpp:301
jl_compile_method_internal at /buildworker/worker/package_linux64/build/src/gf.c:1888
jl_compile_method_internal at /buildworker/worker/package_linux64/build/src/gf.c:1839 [inlined]
_jl_invoke at /buildworker/worker/package_linux64/build/src/gf.c:2143 [inlined]
jl_apply_generic at /buildworker/worker/package_linux64/build/src/gf.c:2334
jl_apply at /buildworker/worker/package_linux64/build/src/julia.h:1753 [inlined]
do_call at /buildworker/worker/package_linux64/build/src/interpreter.c:117
eval_value at /buildworker/worker/package_linux64/build/src/interpreter.c:206
eval_body at /buildworker/worker/package_linux64/build/src/interpreter.c:436
eval_body at /buildworker/worker/package_linux64/build/src/interpreter.c:491
eval_body at /buildworker/worker/package_linux64/build/src/interpreter.c:491
eval_body at /buildworker/worker/package_linux64/build/src/interpreter.c:491
eval_body at /buildworker/worker/package_linux64/build/src/interpreter.c:491
jl_interpret_toplevel_thunk at /buildworker/worker/package_linux64/build/src/interpreter.c:659
macro expansion at /builds/invenia/GPForecasters.jl/test/miso_run.jl:211 [inlined]
macro expansion at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Test/src/Test.jl:1114 [inlined]
macro expansion at /builds/invenia/GPForecasters.jl/test/miso_run.jl:191 [inlined]
macro expansion at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Test/src/Test.jl:1114 [inlined]
top-level scope at /builds/invenia/GPForecasters.jl/test/miso_run.jl:23
jl_toplevel_eval_flex at /buildworker/worker/package_linux64/build/src/toplevel.c:838
jl_toplevel_eval_flex at /buildworker/worker/package_linux64/build/src/toplevel.c:788
jl_toplevel_eval_in at /buildworker/worker/package_linux64/build/src/toplevel.c:881
eval at ./boot.jl:344 [inlined]
include_string at ./loading.jl:1104
_include at ./loading.jl:1158
include at ./client.jl:443
macro expansion at /builds/invenia/GPForecasters.jl/test/runtests.jl:27 [inlined]
macro expansion at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Test/src/Test.jl:1189 [inlined]
macro expansion at /builds/invenia/GPForecasters.jl/test/runtests.jl:26 [inlined]
macro expansion at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Test/src/Test.jl:1114 [inlined]
top-level scope at /builds/invenia/GPForecasters.jl/test/runtests.jl:16
jl_toplevel_eval_flex at /buildworker/worker/package_linux64/build/src/toplevel.c:832
jl_toplevel_eval_flex at /buildworker/worker/package_linux64/build/src/toplevel.c:788
jl_toplevel_eval_in at /buildworker/worker/package_linux64/build/src/toplevel.c:881
eval at ./boot.jl:344 [inlined]
include_string at ./loading.jl:1104
_include at ./loading.jl:1158
include at ./client.jl:443
jl_apply at /buildworker/worker/package_linux64/build/src/julia.h:1753 [inlined]
do_call at /buildworker/worker/package_linux64/build/src/interpreter.c:117
eval_value at /buildworker/worker/package_linux64/build/src/interpreter.c:206
eval_stmt_value at /buildworker/worker/package_linux64/build/src/interpreter.c:157 [inlined]
eval_body at /buildworker/worker/package_linux64/build/src/interpreter.c:551
jl_interpret_toplevel_thunk at /buildworker/worker/package_linux64/build/src/interpreter.c:659
top-level scope at none:6
jl_toplevel_eval_flex at /buildworker/worker/package_linux64/build/src/toplevel.c:838
jl_toplevel_eval_flex at /buildworker/worker/package_linux64/build/src/toplevel.c:788
jl_toplevel_eval_in at /buildworker/worker/package_linux64/build/src/toplevel.c:881
eval at ./boot.jl:344
exec_options at ./client.jl:260
_start at ./client.jl:484
jfptr__start_22849 at /usr/local/julia/lib/julia/sys.so (unknown line)
jl_apply at /buildworker/worker/package_linux64/build/ui/../src/julia.h:1753 [inlined]
true_main at /buildworker/worker/package_linux64/build/ui/repl.c:106
main at /buildworker/worker/package_linux64/build/ui/repl.c:227
__libc_start_main at /lib64/libc.so.6 (unknown line)
_start at /usr/local/julia/bin/julia (unknown line)

Originally posted by @iamed2 in #37154 (comment), but @vchuravy believes this is a different issue

Metadata

Metadata

Assignees

Labels

compiler:optimizerOptimization passes (mostly in base/compiler/ssair/)priorityThis should be addressed urgentlyregressionRegression in behavior compared to a previous version

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions