public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
* [Bug target/93353] ICE: in final_scan_insn_1, at final.c:3073 (error: could not split insn) [not found] <bug-93353-4@http.gcc.gnu.org/bugzilla/> @ 2021-02-26 9:34 ` andrew.goodbody at linaro dot org 2021-02-26 9:43 ` andrew.goodbody at linaro dot org ` (8 subsequent siblings) 9 siblings, 0 replies; 10+ messages in thread From: andrew.goodbody at linaro dot org @ 2021-02-26 9:34 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93353 andrew.goodbody at linaro dot org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |andrew.goodbody at linaro dot org --- Comment #1 from andrew.goodbody at linaro dot org --- gcc 10.2.0 built from tarball running native on aarch64 shows the same behaviour. I will attach the pre-processed source if I can although its over 9MB. In file included from external/eigen_archive/unsupported/Eigen/CXX11/Tensor:144, from ./third_party/eigen3/unsupported/Eigen/CXX11/Tensor:1, from ./tensorflow/core/framework/numeric_types.h:20, from ./tensorflow/core/framework/allocator.h:26, from ./tensorflow/core/framework/op_kernel.h:25, from ./tensorflow/core/kernels/histogram_op.h:19, from tensorflow/core/kernels/histogram_op.cc:20: external/eigen_archive/unsupported/Eigen/CXX11/src/Tensor/TensorExecutor.h: In static member function 'static void Eigen::internal::EvalRange<Evaluator, StorageIndex, true>::run(Evaluator*, StorageIndex, StorageIndex) [with Evaluator = Eigen::TensorEvaluator<const Eigen::TensorAssignOp<Eigen::TensorMap<Eigen::Tensor<int, 1, 1, long int>, 16, Eigen::MakePointer>, const Eigen::TensorConversionOp<int, const Eigen::TensorCwiseBinaryOp<Eigen::internal::scalar_min_op<double, double>, const Eigen::TensorCwiseUnaryOp<Eigen::internal::bind2nd_op<Eigen::internal::scalar_quotient_op<double, double> >, const Eigen::TensorConversionOp<double, const Eigen::TensorCwiseBinaryOp<Eigen::internal::scalar_difference_op<Eigen::half, Eigen::half>, const Eigen::TensorCwiseBinaryOp<Eigen::internal::scalar_max_op<const Eigen::half, const Eigen::half>, const Eigen::TensorMap<Eigen::Tensor<const Eigen::half, 1, 1, long int>, 16, Eigen::MakePointer>, const Eigen::TensorCwiseNullaryOp<Eigen::internal::scalar_constant_op<const Eigen::half>, const Eigen::TensorMap<Eigen::Tensor<const Eigen::half, 1, 1, long int>, 16, Eigen::MakePointer> > >, const Eigen::TensorCwiseNullaryOp<Eigen::internal::scalar_constant_op<const Eigen::half>, const Eigen::TensorMap<Eigen::Tensor<const Eigen::half, 1, 1, long int>, 16, Eigen::MakePointer> > > > >, const Eigen::TensorCwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::TensorCwiseUnaryOp<Eigen::internal::bind2nd_op<Eigen::internal::scalar_quotient_op<double, double> >, const Eigen::TensorConversionOp<double, const Eigen::TensorCwiseBinaryOp<Eigen::internal::scalar_difference_op<Eigen::half, Eigen::half>, const Eigen::TensorCwiseBinaryOp<Eigen::internal::scalar_max_op<const Eigen::half, const Eigen::half>, const Eigen::TensorMap<Eigen::Tensor<const Eigen::half, 1, 1, long int>, 16, Eigen::MakePointer>, const Eigen::TensorCwiseNullaryOp<Eigen::internal::scalar_constant_op<const Eigen::half>, const Eigen::TensorMap<Eigen::Tensor<const Eigen::half, 1, 1, long int>, 16, Eigen::MakePointer> > >, const Eigen::TensorCwiseNullaryOp<Eigen::internal::scalar_constant_op<const Eigen::half>, const Eigen::TensorMap<Eigen::Tensor<const Eigen::half, 1, 1, long int>, 16, Eigen::MakePointer> > > > > > > > >, Eigen::ThreadPoolDevice>; StorageIndex = long int]': external/eigen_archive/unsupported/Eigen/CXX11/src/Tensor/TensorExecutor.h:349:3: error: could not split insn 349 | } | ^ (insn 1615 2102 1433 (set (reg:VNx4SF 34 v2 [orig:554 _1597 ] [554]) (unspec:VNx4SF [ (reg:VNx4BI 72 p4 [orig:376 vec_mask_and_1413 ] [376]) (unspec:VNx4SF [ (reg:VNx4BI 78 p10 [orig:376 vec_mask_and_1413 ] [376]) (const_int 1 [0x1]) (reg:VNx4SF 49 v17 [2017]) (reg:VNx4SF 32 v0 [2049]) ] UNSPEC_COND_FADD) (reg:VNx4SF 39 v7 [orig:392 vect__ifc__887.8029 ] [392]) ] UNSPEC_SEL)) 5628 {*cond_addvnx4sf_any} (expr_list:REG_DEAD (reg:VNx4BI 78 p10 [orig:376 vec_mask_and_1413 ] [376]) (expr_list:REG_DEAD (reg:VNx4BI 72 p4 [orig:376 vec_mask_and_1413 ] [376]) (expr_list:REG_DEAD (reg:VNx4SF 39 v7 [orig:392 vect__ifc__887.8029 ] [392]) (expr_list:REG_EQUAL (unspec:VNx4SF [ (reg:VNx4BI 78 p10 [orig:376 vec_mask_and_1413 ] [376]) (unspec:VNx4SF [ (reg:VNx4BI 78 p10 [orig:376 vec_mask_and_1413 ] [376]) (const_int 1 [0x1]) (reg:VNx4SF 49 v17 [2017]) (const_vector:VNx4SF [ (const_double:SF -6.103515625e-5 [-0x0.8p-13]) ]) ] UNSPEC_COND_FADD) (subreg:VNx4SF (reg:VNx4SI 39 v7 [orig:392 vect__ifc__887.8029 ] [392]) 0) ] UNSPEC_SEL) (nil)))))) during RTL pass: final external/eigen_archive/unsupported/Eigen/CXX11/src/Tensor/TensorExecutor.h:349:3: internal compiler error: in final_scan_insn_1, at final.c:3073 0x69255f _fatal_insn(char const*, rtx_def const*, char const*, int, char const*) /home/builder/src/gcc/10.2.0/gcc-10.2.0/gcc/rtl-error.c:108 0x9debcf final_scan_insn_1 /home/builder/src/gcc/10.2.0/gcc-10.2.0/gcc/final.c:3073 0x9dede3 final_scan_insn(rtx_insn*, _IO_FILE*, int, int, int*) /home/builder/src/gcc/10.2.0/gcc-10.2.0/gcc/final.c:3152 0x9df0a7 final_1 /home/builder/src/gcc/10.2.0/gcc-10.2.0/gcc/final.c:2020 0x9df823 rest_of_handle_final /home/builder/src/gcc/10.2.0/gcc-10.2.0/gcc/final.c:4658 0x9df823 execute /home/builder/src/gcc/10.2.0/gcc-10.2.0/gcc/final.c:4736 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions. ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/93353] ICE: in final_scan_insn_1, at final.c:3073 (error: could not split insn) [not found] <bug-93353-4@http.gcc.gnu.org/bugzilla/> 2021-02-26 9:34 ` [Bug target/93353] ICE: in final_scan_insn_1, at final.c:3073 (error: could not split insn) andrew.goodbody at linaro dot org @ 2021-02-26 9:43 ` andrew.goodbody at linaro dot org 2021-02-26 9:46 ` andrew.goodbody at linaro dot org ` (7 subsequent siblings) 9 siblings, 0 replies; 10+ messages in thread From: andrew.goodbody at linaro dot org @ 2021-02-26 9:43 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93353 --- Comment #2 from andrew.goodbody at linaro dot org --- Created attachment 50260 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=50260&action=edit Pre-processed source showing bug Sorry its an archive but its too big as plain text. Produced along with the output from the previous comment. ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/93353] ICE: in final_scan_insn_1, at final.c:3073 (error: could not split insn) [not found] <bug-93353-4@http.gcc.gnu.org/bugzilla/> 2021-02-26 9:34 ` [Bug target/93353] ICE: in final_scan_insn_1, at final.c:3073 (error: could not split insn) andrew.goodbody at linaro dot org 2021-02-26 9:43 ` andrew.goodbody at linaro dot org @ 2021-02-26 9:46 ` andrew.goodbody at linaro dot org 2021-02-27 0:21 ` segher at gcc dot gnu.org ` (6 subsequent siblings) 9 siblings, 0 replies; 10+ messages in thread From: andrew.goodbody at linaro dot org @ 2021-02-26 9:46 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93353 --- Comment #3 from andrew.goodbody at linaro dot org --- Command line used was this /usr/local/bin/gcc -U_FORTIFY_SOURCE -Wall -Wunused-but-set-parameter -Wno-free-nonheap-object -fno-omit-frame-pointer -g0 -O2 '-D_FORTIFY_SOURCE=1' -DNDEBUG -ffunction-sections -fdata-sections '-std=c++0x' -MD -MF bazel-out/aarch64-opt/bin/tensorflow/core/kernels/_objs/histogram_op/histogram_op.pic.d '-frandom-seed=bazel-out/aarch64-opt/bin/tensorflow/core/kernels/_objs/histogram_op/histogram_op.pic.o' -fPIC -D__CLANG_SUPPORT_DYN_ANNOTATION__ -DEIGEN_MPL2_ONLY '-DEIGEN_MAX_ALIGN_BYTES=64' '-DEIGEN_HAS_TYPE_TRAITS=0' -DEIGEN_USE_BLAS -DEIGEN_USE_LAPACK -iquote . -iquote bazel-out/aarch64-opt/bin -iquote external/com_google_absl -iquote bazel-out/aarch64-opt/bin/external/com_google_absl -iquote external/eigen_archive -iquote bazel-out/aarch64-opt/bin/external/eigen_archive -iquote external/local_config_sycl -iquote bazel-out/aarch64-opt/bin/external/local_config_sycl -iquote external/nsync -iquote bazel-out/aarch64-opt/bin/external/nsync -iquote external/com_googlesource_code_re2 -iquote bazel-out/aarch64-opt/bin/external/com_googlesource_code_re2 -iquote external/gif -iquote bazel-out/aarch64-opt/bin/external/gif -iquote external/libjpeg_turbo -iquote bazel-out/aarch64-opt/bin/external/libjpeg_turbo -iquote external/com_google_protobuf -iquote bazel-out/aarch64-opt/bin/external/com_google_protobuf -iquote external/farmhash_archive -iquote bazel-out/aarch64-opt/bin/external/farmhash_archive -iquote external/fft2d -iquote bazel-out/aarch64-opt/bin/external/fft2d -iquote external/highwayhash -iquote bazel-out/aarch64-opt/bin/external/highwayhash -iquote external/zlib_archive -iquote bazel-out/aarch64-opt/bin/external/zlib_archive -isystem third_party/eigen3/mkl_include -isystem bazel-out/aarch64-opt/bin/third_party/eigen3/mkl_include -isystem external/eigen_archive -isystem bazel-out/aarch64-opt/bin/external/eigen_archive -isystem external/nsync/public -isystem bazel-out/aarch64-opt/bin/external/nsync/public -isystem external/gif -isystem bazel-out/aarch64-opt/bin/external/gif -isystem external/com_google_protobuf/src -isystem bazel-out/aarch64-opt/bin/external/com_google_protobuf/src -isystem external/farmhash_archive/src -isystem bazel-out/aarch64-opt/bin/external/farmhash_archive/src -isystem external/zlib_archive -isystem bazel-out/aarch64-opt/bin/external/zlib_archive '-march=armv8.2-a+sve' -O3 '-std=c++14' '-march=armv8.2-a+sve' -O3 '-D_GLIBCXX_USE_CXX11_ABI=0' -DEIGEN_AVOID_STL_ARRAY -Iexternal/gemmlowp -Wno-sign-compare '-ftemplate-depth=900' -fno-exceptions '-DINTEL_MKL=1' -DEIGEN_USE_VML -DINTEL_MKL_DNN_ONLY -DENABLE_MKL -pthread '-DINTEL_MKL=1' -DINTEL_MKL_DNN_ONLY -DENABLE_MKL -fno-canonical-system-headers -Wno-builtin-macro-redefined '-D__DATE__="redacted"' '-D__TIMESTAMP__="redacted"' '-D__TIME__="redacted"' -c tensorflow/core/kernels/histogram_op.cc -o bazel-out/aarch64-opt/bin/tensorflow/core/kernels/_objs/histogram_op/histogram_op.pic.o ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/93353] ICE: in final_scan_insn_1, at final.c:3073 (error: could not split insn) [not found] <bug-93353-4@http.gcc.gnu.org/bugzilla/> ` (2 preceding siblings ...) 2021-02-26 9:46 ` andrew.goodbody at linaro dot org @ 2021-02-27 0:21 ` segher at gcc dot gnu.org 2021-02-27 5:28 ` asolokha at gmx dot com ` (5 subsequent siblings) 9 siblings, 0 replies; 10+ messages in thread From: segher at gcc dot gnu.org @ 2021-02-27 0:21 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93353 --- Comment #4 from Segher Boessenkool <segher at gcc dot gnu.org> --- I cannot get the reduced testcase to fail. Are any special options needed? ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/93353] ICE: in final_scan_insn_1, at final.c:3073 (error: could not split insn) [not found] <bug-93353-4@http.gcc.gnu.org/bugzilla/> ` (3 preceding siblings ...) 2021-02-27 0:21 ` segher at gcc dot gnu.org @ 2021-02-27 5:28 ` asolokha at gmx dot com 2021-02-27 8:54 ` jakub at gcc dot gnu.org ` (4 subsequent siblings) 9 siblings, 0 replies; 10+ messages in thread From: asolokha at gmx dot com @ 2021-02-27 5:28 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93353 --- Comment #5 from Arseny Solokha <asolokha at gmx dot com> --- (In reply to Segher Boessenkool from comment #4) > I cannot get the reduced testcase to fail. Are any special options needed? If you've been asking me: no, the compiler invocation posted in comment 0 is explicit, but maybe you need -m32 -f{,no-}PIC -f{,no-}stack-protector which one often does for reproducing my PRs because of the configuration I use. I'll certainly test the current snapshot, but I won't be able to do so at least one more week. ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/93353] ICE: in final_scan_insn_1, at final.c:3073 (error: could not split insn) [not found] <bug-93353-4@http.gcc.gnu.org/bugzilla/> ` (4 preceding siblings ...) 2021-02-27 5:28 ` asolokha at gmx dot com @ 2021-02-27 8:54 ` jakub at gcc dot gnu.org 2021-02-27 9:02 ` jakub at gcc dot gnu.org ` (3 subsequent siblings) 9 siblings, 0 replies; 10+ messages in thread From: jakub at gcc dot gnu.org @ 2021-02-27 8:54 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93353 Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jakub at gcc dot gnu.org --- Comment #6 from Jakub Jelinek <jakub at gcc dot gnu.org> --- I can reproduce #c0 with an older trunk and -m32 -mcpu=e300c3 in a cross, but it has been fixed with r11-3606-g4c69e61f4307865b95151006e480ae2022b30454 So maybe that fix needs backporting? As for #c3-#c5, please file a separate bug, a rs6000 backend bug certainly has nothing to do with completely unrelated aarch64 ICE. ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/93353] ICE: in final_scan_insn_1, at final.c:3073 (error: could not split insn) [not found] <bug-93353-4@http.gcc.gnu.org/bugzilla/> ` (5 preceding siblings ...) 2021-02-27 8:54 ` jakub at gcc dot gnu.org @ 2021-02-27 9:02 ` jakub at gcc dot gnu.org 2021-02-27 20:48 ` segher at gcc dot gnu.org ` (2 subsequent siblings) 9 siblings, 0 replies; 10+ messages in thread From: jakub at gcc dot gnu.org @ 2021-02-27 9:02 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93353 --- Comment #7 from Jakub Jelinek <jakub at gcc dot gnu.org> --- And to explain what was happening, rs6000_legitimize_address has been called on x (plus:SI (reg/f:SI 117) (const_int 2147483647 [0x7fffffff])) and mode QImode, oldx == x. ((0x7fffffff & 0xffff) ^ 0x8000) - 0x8000 is low_int -1 and if (low_int >= 0x8000 - extra) is not true and 0x7fffffff - -1 is 0x80000000 (with UB on the compiler side). So maybe the above mentioned commit wasn't sufficient and we should - high_int = INTVAL (XEXP (x, 1)) - low_int; + high_int = UINTVAL (XEXP (x, 1)) - low_int; But also && ((unsigned HOST_WIDE_INT) (INTVAL (XEXP (x, 1)) + 0x8000) can invoke UB in the compiler, shouldn't it be just && ((UINTVAL (XEXP (x, 1)) + 0x8000) ? ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/93353] ICE: in final_scan_insn_1, at final.c:3073 (error: could not split insn) [not found] <bug-93353-4@http.gcc.gnu.org/bugzilla/> ` (6 preceding siblings ...) 2021-02-27 9:02 ` jakub at gcc dot gnu.org @ 2021-02-27 20:48 ` segher at gcc dot gnu.org 2021-02-27 20:56 ` segher at gcc dot gnu.org 2024-03-23 23:17 ` pinskia at gcc dot gnu.org 9 siblings, 0 replies; 10+ messages in thread From: segher at gcc dot gnu.org @ 2021-02-27 20:48 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93353 --- Comment #8 from Segher Boessenkool <segher at gcc dot gnu.org> --- (In reply to Arseny Solokha from comment #5) > (In reply to Segher Boessenkool from comment #4) > > I cannot get the reduced testcase to fail. Are any special options needed? > > If you've been asking me: Well you reported this, so probably? :-) > no, the compiler invocation posted in comment 0 is > explicit, but maybe you need -m32 -f{,no-}PIC -f{,no-}stack-protector which > one often does for reproducing my PRs because of the configuration I use. Maybe that is why I so often cannot reproduce your PRs? Please always state the exact compiler configuration / invocation needed. > I'll certainly test the current snapshot, but I won't be able to do so at > least one more week. Jakub in comment 7 seems to have found the problem. I cc:ed Alan, who did 4c69e61f4307, which seems to have fixed it on trunk (there is no PR for that so far?) ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/93353] ICE: in final_scan_insn_1, at final.c:3073 (error: could not split insn) [not found] <bug-93353-4@http.gcc.gnu.org/bugzilla/> ` (7 preceding siblings ...) 2021-02-27 20:48 ` segher at gcc dot gnu.org @ 2021-02-27 20:56 ` segher at gcc dot gnu.org 2024-03-23 23:17 ` pinskia at gcc dot gnu.org 9 siblings, 0 replies; 10+ messages in thread From: segher at gcc dot gnu.org @ 2021-02-27 20:56 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93353 --- Comment #9 from Segher Boessenkool <segher at gcc dot gnu.org> --- (In reply to Jakub Jelinek from comment #7) > if (low_int >= 0x8000 - extra) > is not true and 0x7fffffff - -1 is 0x80000000 (with UB on the compiler side). These are HWIs, so there is no UB. > But also > && ((unsigned HOST_WIDE_INT) (INTVAL (XEXP (x, 1)) + 0x8000) > can invoke UB in the compiler, shouldn't it be just > && ((UINTVAL (XEXP (x, 1)) + 0x8000) > ? That sounds right, yes. ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/93353] ICE: in final_scan_insn_1, at final.c:3073 (error: could not split insn) [not found] <bug-93353-4@http.gcc.gnu.org/bugzilla/> ` (8 preceding siblings ...) 2021-02-27 20:56 ` segher at gcc dot gnu.org @ 2024-03-23 23:17 ` pinskia at gcc dot gnu.org 9 siblings, 0 replies; 10+ messages in thread From: pinskia at gcc dot gnu.org @ 2024-03-23 23:17 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93353 Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |FIXED Target Milestone|--- |11.0 Status|UNCONFIRMED |RESOLVED --- Comment #10 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Fixed so closing as such as GCC 10 no longer being updated. Note the aarch64 bug which was reported (incorrectly in this bug report) is a dup of PR 96357. ^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2024-03-23 23:17 UTC | newest] Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- [not found] <bug-93353-4@http.gcc.gnu.org/bugzilla/> 2021-02-26 9:34 ` [Bug target/93353] ICE: in final_scan_insn_1, at final.c:3073 (error: could not split insn) andrew.goodbody at linaro dot org 2021-02-26 9:43 ` andrew.goodbody at linaro dot org 2021-02-26 9:46 ` andrew.goodbody at linaro dot org 2021-02-27 0:21 ` segher at gcc dot gnu.org 2021-02-27 5:28 ` asolokha at gmx dot com 2021-02-27 8:54 ` jakub at gcc dot gnu.org 2021-02-27 9:02 ` jakub at gcc dot gnu.org 2021-02-27 20:48 ` segher at gcc dot gnu.org 2021-02-27 20:56 ` segher at gcc dot gnu.org 2024-03-23 23:17 ` pinskia at gcc dot gnu.org
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).