Bug 1410950

Summary: Cannot select:... AtomicFence, when compiling Rust on s390x
Product: [Fedora] Fedora Reporter: Josh Stone <jistone>
Component: llvmAssignee: Adam Jackson <ajax>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 25CC: ajax, bos, dan, davejohansen, dmalcolm, jistone, petersen, scottt.tw, skumari
Target Milestone: ---   
Target Release: ---   
Hardware: s390x   
OS: Unspecified   
Whiteboard:
Fixed In Version: llvm-3.8.1-2.fc24 llvm-3.8.1-2.fc25 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
: 1410952 (view as bug list) Environment:
Last Closed: 2017-01-14 05:19:26 UTC Type: Bug
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: 1410952    

Description Josh Stone 2017-01-06 23:34:52 UTC
Description of problem:
Attempts to bootstrap Rust on s390x failed with an LLVM ERROR on f24 and f25.  The same srpm on f26 (with LLVM 3.9) is fine.

f24: https://s390.koji.fedoraproject.org/koji/taskinfo?taskID=2439756
f25: https://s390.koji.fedoraproject.org/koji/taskinfo?taskID=2439754

Version-Release number of selected component (if applicable):
llvm-3.8.0-1.fc25/24
building rust-1.14.0-1.fc25/24

How reproducible:
100%

Steps to Reproduce:
1. rpmbuild --rebuild rust-1.14.0-1.fc25.src.rpm
(or try again on s390.koji)

Actual results:
LLVM ERROR: Cannot select: 0x3ff793b6d90: ch = AtomicFence 0x3ff70818a70, Constant:i64<4>, Constant:i64<1>
  0x3ff728d89c0: i64 = Constant<4>
  0x3ff793b7120: i64 = Constant<1>
In function: _ZN33_$LT$alloc..arc..Arc$LT$T$GT$$GT$9drop_slow17h19a3f415d8721b31E

Expected results:
no compiler errors :)

Additional info:
A similar problem was reported upstream for compiling v8 with Clang 3.8, then closed when it was found to work with 3.9.  That's probably a simpler reproducer.
https://llvm.org/bugs/show_bug.cgi?id=28735

Also, the rawhide builds of Rust with LLVM 3.9 were fine:
https://s390.koji.fedoraproject.org/koji/buildinfo?buildID=449416
https://s390.koji.fedoraproject.org/koji/buildinfo?buildID=449417

Comment 1 Josh Stone 2017-01-07 00:30:57 UTC
This looks like a pretty obvious candidate, added between 3.8 and 3.9:
https://github.com/llvm-mirror/llvm/commit/3b8a73e9fe8d4aa0b6d2130d41d8080e21ea741b
https://reviews.llvm.org/D18644

Comment 2 Josh Stone 2017-01-10 19:21:59 UTC
I'm still testing the full Rust build, but that patch looks good so far.
Scratch: https://s390.koji.fedoraproject.org/koji/taskinfo?taskID=2440095

Comment 3 Fedora Update System 2017-01-11 02:11:52 UTC
llvm-3.8.1-2.fc24 has been submitted as an update to Fedora 24. https://bodhi.fedoraproject.org/updates/FEDORA-2017-55f46db34e

Comment 4 Fedora Update System 2017-01-11 02:12:13 UTC
llvm-3.8.1-2.fc25 has been submitted as an update to Fedora 25. https://bodhi.fedoraproject.org/updates/FEDORA-2017-1e88986ac9

Comment 5 Fedora Update System 2017-01-12 07:50:54 UTC
llvm-3.8.1-2.fc24 has been pushed to the Fedora 24 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-55f46db34e

Comment 6 Fedora Update System 2017-01-12 07:52:07 UTC
llvm-3.8.1-2.fc25 has been pushed to the Fedora 25 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-1e88986ac9

Comment 7 Fedora Update System 2017-01-14 05:19:26 UTC
llvm-3.8.1-2.fc24 has been pushed to the Fedora 24 stable repository. If problems still persist, please make note of it in this bug report.

Comment 8 Fedora Update System 2017-01-16 19:51:20 UTC
llvm-3.8.1-2.fc25 has been pushed to the Fedora 25 stable repository. If problems still persist, please make note of it in this bug report.