Bug 2375376

Summary: gcc internal compiler error: in print_addrstyle_operand, at config/s390/s390.cc:8312
Product: [Fedora] Fedora Reporter: Richard W.M. Jones <rjones>
Component: gccAssignee: Jakub Jelinek <jakub>
Status: NEW --- QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 45CC: dmalcolm, fweimer, jakub, jlaw, josmyers, jwakely, mcermak, mpolacek, msebor, nickc, nixuser, sipoyare
Target Milestone: ---Keywords: Reopened
Target Release: ---   
Hardware: s390x   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: ---
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2025-06-28 21:50:04 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 2375374    
Attachments:
Description Flags
build.log none

Description Richard W.M. Jones 2025-06-28 21:27:42 UTC
GCC on s390x fails to compile the latest AFL.

Reproducible: Always

Steps to Reproduce:
1. Compile american-fuzzy-lop 4.33c on s390x

Actual Results:
Fails, see log attached.

Comment 1 Richard W.M. Jones 2025-06-28 21:28:24 UTC
gcc -O2  -fexceptions -g -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  -m64 -march=z13 -mtune=z14 -fasynchronous-unwind-tables -fstack-clash-protection -g -Wno-pointer-sign -Wno-variadic-macros -Wall -Wextra -Wno-pointer-arith -fPIC -I include/ -DAFL_PATH=\"/usr/lib64/afl\" -DBIN_PATH=\"/usr/bin\" -DDOC_PATH=\"/usr/share/doc/american-fuzzy-lop\"  -flto  src/afl-fuzz-bitmap.c src/afl-fuzz-cmplog.c src/afl-fuzz-extras.c src/afl-fuzz-init.c src/afl-fuzz-mutators.c src/afl-fuzz-one.c src/afl-fuzz-python.c src/afl-fuzz-queue.c src/afl-fuzz-redqueen.c src/afl-fuzz-run.c src/afl-fuzz-sanfuzz.c src/afl-fuzz-skipdet.c src/afl-fuzz-state.c src/afl-fuzz-stats.c src/afl-fuzz-statsd.c src/afl-fuzz.c src/afl-common.o src/afl-sharedmem.o src/afl-forkserver.o src/afl-performance.o -o afl-fuzz  -Wl,-z,relro -Wl,--as-needed   -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-hardened-ld-errors -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1  -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes  -ldl -lrt -lm -lm
src/afl-fuzz-run.c: In function ‘check_sync_fuzzers’:
src/afl-fuzz-run.c:809:11: warning: ignoring return value of ‘write’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
  809 |           write(max_fd, &max_start_id, sizeof(u32));
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/afl-fuzz-run.c: In function ‘sync_fuzzers’:
src/afl-fuzz-run.c:985:7: warning: ignoring return value of ‘read’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
  985 |       read(max_fd, &max_start_id, sizeof(u32));
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In function ‘read’,
    inlined from ‘main’ at src/afl-fuzz.c:2827:7:
/usr/include/bits/unistd.h:32:10: warning: ‘__read_alias’ writing 96 bytes into a region of size 1 overflows the destination [-Wstringop-overflow=]
   32 |   return __glibc_fortify (read, __nbytes, sizeof (char),
      |          ^
include/afl-fuzz.h: In function ‘main’:
include/afl-fuzz.h:213:6: note: destination object ‘colorized’ of size 1
  213 |   u8 colorized,                         /* Do not run redqueen stage again  */
      |      ^
/usr/include/bits/unistd-decl.h:29:16: note: in a call to function ‘__read_alias’ declared with attribute ‘access (write_only, 2, 3)’
   29 | extern ssize_t __REDIRECT_FORTIFY (__read_alias, (int __fd, void *__buf,
      |                ^
In function ‘read’,
    inlined from ‘main’ at src/afl-fuzz.c:2827:7:
/usr/include/bits/unistd.h:32:10: warning: ‘__read_chk’ writing 96 bytes into a region of size 1 overflows the destination [-Wstringop-overflow=]
   32 |   return __glibc_fortify (read, __nbytes, sizeof (char),
      |          ^
include/afl-fuzz.h: In function ‘main’:
include/afl-fuzz.h:213:6: note: destination object ‘colorized’ of size 1
  213 |   u8 colorized,                         /* Do not run redqueen stage again  */
      |      ^
/usr/include/bits/unistd-decl.h:26:16: note: in a call to function ‘__read_chk’ declared with attribute ‘access (write_only, 2, 3)’
   26 | extern ssize_t __read_chk (int __fd, void *__buf, size_t __nbytes,
      |                ^
*** 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: final
src/afl-fuzz-redqueen.c: In function ‘input_to_state_stage’:
src/afl-fuzz-redqueen.c:3292:1: internal compiler error: in print_addrstyle_operand, at config/s390/s390.cc:8312
 3292 | }
      | ^
Please submit a full bug report, with preprocessed source.
See <http://bugzilla.redhat.com/bugzilla> for instructions.
{standard input}: Assembler messages:
{standard input}:18852: Warning: end of file not at end of a line; newline inserted
{standard input}:18907: Error: operand 3: missing displacement operand
{standard input}: Error: open CFI at the end of file; missing .cfi_endproc directive
make[1]: *** [/tmp/ccLj72hF.mk:6: /tmp/ccdXu8za.ltrans2.ltrans.o] Error 1
lto-wrapper: fatal error: make returned 2 exit status
compilation terminated.
/usr/bin/ld: error: lto-wrapper failed
collect2: error: ld returned 1 exit status

Comment 2 Richard W.M. Jones 2025-06-28 21:30:15 UTC
Created attachment 2095591 [details]
build.log

build.log file from Koji build

Unfortunately as I don't have easy access to an s390x system, it is difficult for me to provide the requested information.

Comment 3 Richard W.M. Jones 2025-06-28 21:41:14 UTC
Latest AFL is here:
https://src.fedoraproject.org/rpms/american-fuzzy-lop/c/c4c909cf0a9a19e6566ee9b18f179bca2cb4a0fc?branch=rawhide

You'll have to reenable s390x in the list of arches, but apart from that it should
reproduce simply by recompiling in Rawhide.

Comment 4 Fedora Update System 2025-06-28 21:46:49 UTC
FEDORA-2025-0941ac74a4 (american-fuzzy-lop-4.33c-1.fc43) has been submitted as an update to Fedora 43.
https://bodhi.fedoraproject.org/updates/FEDORA-2025-0941ac74a4

Comment 5 Fedora Update System 2025-06-28 21:50:04 UTC
FEDORA-2025-0941ac74a4 (american-fuzzy-lop-4.33c-1.fc43) has been pushed to the Fedora 43 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 6 Aoife Moloney 2026-08-17 13:37:47 UTC
This bug appears to have been reported against 'rawhide' during the Fedora Linux 45 development cycle.
Changing version to 45.