Bug 2260560 - internal compiler error: in aarch64_pair_mem_from_base, at config/aarch64/aarch64.cc:8235
Summary: internal compiler error: in aarch64_pair_mem_from_base, at config/aarch64/aar...
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: gcc
Version: rawhide
Hardware: aarch64
OS: Linux
unspecified
high
Target Milestone: ---
Assignee: Jakub Jelinek
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: 2260555
TreeView+ depends on / blocked
 
Reported: 2024-01-26 20:11 UTC by Stephen Gallagher
Modified: 2024-02-13 11:55 UTC (History)
12 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2024-02-13 11:55:43 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
Preprocessed source (253.52 KB, text/plain)
2024-01-26 20:13 UTC, Stephen Gallagher
no flags Details


Links
System ID Private Priority Status Summary Last Updated
GNU Compiler Collection 113623 0 P1 NEW [14 Regression] ICE in aarch64_pair_mem_from_base since r14-6605 2024-01-26 21:05:41 UTC

Description Stephen Gallagher 2024-01-26 20:11:16 UTC
Building Node.js 20 (specifically, the bundled nghttp2) with gcc-14.0.1-0.3.fc40.aarch64 generated an internal compiler error. The same program compiles correctly with gcc-14.0.1-0.2.fc40



Reproducible: Always

Steps to Reproduce:
1. Attempt to build the nodejs20 package with `fedpkg mockbuild --enablerepo=local`

Actual Results:  
[1094/2732] gcc -MMD -MF obj/deps/nghttp2/lib/nghttp2.nghttp2_hd.o.d -D_U_= -D_GLIBCXX_USE_CXX11_ABI=1 -DNODE_OPENSSL_CONF_NAME=openssl_conf -DNODE_OPENSSL_CERT_STORE -DOPENSSL_FIPS -DICU_NO_USER_DATA_OVERRIDE -DNODE_SHARED_BUILTIN_CJS_MODULE_LEXER_LEXER_PATH=/usr/lib/node_modules/cjs-module-lexer/lexer.js -DNODE_SHARED_BUILTIN_CJS_MODULE_LEXER_DIST_LEXER_PATH=/usr/lib/node_modules/cjs-module-lexer/dist/lexer.js -DNODE_SHARED_BUILTIN_UNDICI_UNDICI_PATH=/usr/lib/node_modules/undici/index.js -D__STDC_FORMAT_MACROS -DBUILDING_NGHTTP2 -DNGHTTP2_STATICLIB -DHAVE_CONFIG_H -I../../deps/nghttp2/lib/includes -msign-return-address=all -pthread -Wall -Wextra -Wno-unused-parameter -fPIC -O3  -flto=4 -fuse-linker-plugin -ffat-lto-objects  -fno-omit-frame-pointer -O2 -fexceptions -g1 -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DZLIB_CONST -fno-delete-null-pointer-checks -O3 -fno-ipa-icf  -c ../../deps/nghttp2/lib/nghttp2_hd.c -o obj/deps/nghttp2/lib/nghttp2.nghttp2_hd.o
FAILED: obj/deps/nghttp2/lib/nghttp2.nghttp2_hd.o 
gcc -MMD -MF obj/deps/nghttp2/lib/nghttp2.nghttp2_hd.o.d -D_U_= -D_GLIBCXX_USE_CXX11_ABI=1 -DNODE_OPENSSL_CONF_NAME=openssl_conf -DNODE_OPENSSL_CERT_STORE -DOPENSSL_FIPS -DICU_NO_USER_DATA_OVERRIDE -DNODE_SHARED_BUILTIN_CJS_MODULE_LEXER_LEXER_PATH=/usr/lib/node_modules/cjs-module-lexer/lexer.js -DNODE_SHARED_BUILTIN_CJS_MODULE_LEXER_DIST_LEXER_PATH=/usr/lib/node_modules/cjs-module-lexer/dist/lexer.js -DNODE_SHARED_BUILTIN_UNDICI_UNDICI_PATH=/usr/lib/node_modules/undici/index.js -D__STDC_FORMAT_MACROS -DBUILDING_NGHTTP2 -DNGHTTP2_STATICLIB -DHAVE_CONFIG_H -I../../deps/nghttp2/lib/includes -msign-return-address=all -pthread -Wall -Wextra -Wno-unused-parameter -fPIC -O3  -flto=4 -fuse-linker-plugin -ffat-lto-objects  -fno-omit-frame-pointer -O2 -fexceptions -g1 -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DZLIB_CONST -fno-delete-null-pointer-checks -O3 -fno-ipa-icf  -c ../../deps/nghttp2/lib/nghttp2_hd.c -o obj/deps/nghttp2/lib/nghttp2.nghttp2_hd.o
gcc: warning: switch ‘-msign-return-address=all’ is no longer supported
*** WARNING *** there are active plugins, do not report this as a bug unless you can reproduce it without enabling any plugins.
Event                            | Plugins
PLUGIN_FINISH_UNIT               | annobin: Generate final annotations
PLUGIN_START_UNIT                | annobin: Generate global annotations
PLUGIN_ALL_PASSES_START          | annobin: Generate per-function annotations
PLUGIN_ALL_PASSES_END            | annobin: Register per-function end symbols
during RTL pass: ldp_fusion
../../deps/nghttp2/lib/nghttp2_hd.c: In function ‘nghttp2_hd_inflate_hd_nv’:
../../deps/nghttp2/lib/nghttp2_hd.c:2236:1: internal compiler error: in aarch64_pair_mem_from_base, at config/aarch64/aarch64.cc:8235
 2236 | }
      | ^
Please submit a full bug report, with preprocessed source (by using -freport-bug).
See <http://bugzilla.redhat.com/bugzilla> for instructions.
The bug is not reproducible, so it is likely a hardware or OS problem.

Expected Results:  
Successful compilation

Comment 1 Stephen Gallagher 2024-01-26 20:13:19 UTC
Created attachment 2010797 [details]
Preprocessed source

Attaching preprocessed source generated with -save-temps

Comment 2 Josh Stone 2024-01-27 01:24:41 UTC
FWIW, rust's rebuild hit the same error, also in bundled nghttp2:
https://koji.fedoraproject.org/koji/taskinfo?taskID=112414058

The following warnings were emitted during compilation:
warning: libnghttp2-sys.7+1.45.0: *** WARNING *** there are active plugins, do not report this as a bug unless you can reproduce it without enabling any plugins.
warning: libnghttp2-sys.7+1.45.0: Event                            | Plugins
warning: libnghttp2-sys.7+1.45.0: PLUGIN_FINISH_UNIT               | annobin: Generate final annotations
warning: libnghttp2-sys.7+1.45.0: PLUGIN_START_UNIT                | annobin: Generate global annotations
warning: libnghttp2-sys.7+1.45.0: PLUGIN_ALL_PASSES_START          | annobin: Generate per-function annotations
warning: libnghttp2-sys.7+1.45.0: PLUGIN_ALL_PASSES_END            | annobin: Register per-function end symbols
warning: libnghttp2-sys.7+1.45.0: during RTL pass: ldp_fusion
warning: libnghttp2-sys.7+1.45.0: nghttp2/lib/nghttp2_hd.c: In function ‘nghttp2_hd_inflate_hd_nv’:
warning: libnghttp2-sys.7+1.45.0: nghttp2/lib/nghttp2_hd.c:2230:1: internal compiler error: in aarch64_pair_mem_from_base, at config/aarch64/aarch64.cc:8235
warning: libnghttp2-sys.7+1.45.0:  2230 | }
warning: libnghttp2-sys.7+1.45.0:       | ^
warning: libnghttp2-sys.7+1.45.0: Please submit a full bug report, with preprocessed source (by using -freport-bug).
warning: libnghttp2-sys.7+1.45.0: See <http://bugzilla.redhat.com/bugzilla> for instructions.
warning: libnghttp2-sys.7+1.45.0: The bug is not reproducible, so it is likely a hardware or OS problem.
error: failed to run custom build command for `libnghttp2-sys v0.1.7+1.45.0`

Comment 3 Jakub Jelinek 2024-01-29 09:23:52 UTC
Note, in gcc-14.0.1-0.4.fc40 I've applied a workaround - disabled the aarch64 -m{early,late}-ldp-fusion options by default temporarily, until this and another bug are fixed upstream.

Comment 4 Jakub Jelinek 2024-02-13 11:55:43 UTC
And in gcc-14.0.1-0.6.fc40 it should be fixed for real.


Note You need to log in before you can comment on or make changes to this bug.