Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 1554349
Summary: | LLVM ERROR: Cannot select: 0x7fff84646d20: ch = PPCISD::STBRX<ST6[%747](align=1)> 0x7fff843fc138, 0x7fff84646f90, 0x7fff848c46d8, ValueType:ch:i48 | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Igor Gnatenko <ignatenko> | ||||||
Component: | llvm | Assignee: | Tilmann Scheller <tschelle> | ||||||
Status: | CLOSED CURRENTRELEASE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||||
Severity: | unspecified | Docs Contact: | |||||||
Priority: | unspecified | ||||||||
Version: | rawhide | CC: | ajax, davejohansen, dmalcolm, ignatenko, jakub, jistone, petersen, rust-sig, scottt.tw, siddharth.kde, TicoTimo, tstellar | ||||||
Target Milestone: | --- | ||||||||
Target Release: | --- | ||||||||
Hardware: | ppc64le | ||||||||
OS: | Unspecified | ||||||||
Whiteboard: | |||||||||
Fixed In Version: | Doc Type: | If docs needed, set a value | |||||||
Doc Text: | Story Points: | --- | |||||||
Clone Of: | |||||||||
: | 1558226 (view as bug list) | Environment: | |||||||
Last Closed: | 2018-04-05 14:36:34 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: | |||||||||
Attachments: |
|
Description
Igor Gnatenko
2018-03-12 13:55:27 UTC
100% reproducible on ppc64le with hyper crate. On the surface, it looks very similar to this bug report: https://bugs.llvm.org/show_bug.cgi?id=35402 This is an LLVM issue. Is there any way we can get an LLVM IR dump from rust? (In reply to Tom Stellard from comment #3) > This is an LLVM issue. Is there any way we can get an LLVM IR dump from > rust? https://kojipkgs.fedoraproject.org//work/tasks/3527/25663527/build.log Unfortunately not in tarball, but it's hard to grab any archive from koji... (In reply to Igor Gnatenko from comment #4) > (In reply to Tom Stellard from comment #3) > > This is an LLVM issue. Is there any way we can get an LLVM IR dump from > > rust? > > https://kojipkgs.fedoraproject.org//work/tasks/3527/25663527/build.log > > Unfortunately not in tarball, but it's hard to grab any archive from koji... FWIW, for gcc, we have a hook to dump the preprocessed source on a crash (as /tmp/cc*out), and then use something like: BuildRequires: sharutils and then: make || : ( tar cf - /tmp/cc*.out | bzip2 -9 | uuencode cc.tar.bz2 ) which stashes a uuencoded form of the tarball into the Koji build log, from which one can copy&paste it, and then decode it back to a tarball. Created attachment 1407362 [details]
llvm-ir from rust 1.25-beta with llvm-6
Here are the output files that I get from my scratch build of Rust 1.25 beta using LLVM 6, running: rustc ... --emit=llvm-ir
That rustc beta build is here: https://koji.fedoraproject.org/koji/taskinfo?taskID=25562954 It also reproduces with the current stable rustc, using llvm5.0-libs. It does NOT reproduce on Fedora 26, rust-1.24.0 and llvm-libs-4.0.1. Created attachment 1407574 [details]
Reduced test case
Reduced test case that works with LLVM 4.0
The reduced test case reproduces with a trunk build from today and LLVM 5.0.1 in Fedora 27. Can confirm that it does not reproduce with the llc from the llvm4.0 package in Fedora 27. Currently bisecting to find out at which point between 4.0 and 5.0 the regression was introduced. Looks like the regression was introduced a year ago with the following change in r296811: commit f2f076498022ec1ab5abadb7349f62b1dbc2ac0d Author: Guozhi Wei <carrot> Date: Thu Mar 2 21:07:59 2017 +0000 [PPC] Fix code generation for bswap(int32) followed by store16 This patch fixes pr32063. Current code in PPCTargetLowering::PerformDAGCombine can transform bswap store into a single PPCISD::STBRX instruction. but it doesn't consider the case that the operand size of bswap may be larger than store size. When it occurs, we need 2 modifications, 1 For the last operand of PPCISD::STBRX, we should not use DAG.getValueType(N->getOperand(1).getValueType()), instead we should use cast<StoreSDNode>(N)->getMemoryVT(). 2 Before PPCISD::STBRX, we need to shift the original operand of bswap to the right side. Differential Revision: https://reviews.llvm.org/D30362 Will investigate further and file a bug upstream. Has been fixed upstream in http://llvm.org/viewvc/llvm-project?view=revision&revision=327651. Fixed in rawhide: llvm-6.0.0-8.fc29 llvm4.0-4.0.1-4.fc27 has been submitted as an update to Fedora 27. https://bodhi.fedoraproject.org/updates/FEDORA-2018-5db8f23c3f llvm-5.0.1-5.fc27 has been submitted as an update to Fedora 27. https://bodhi.fedoraproject.org/updates/FEDORA-2018-cffb23a2cc llvm-4.0.1-3.fc26 has been submitted as an update to Fedora 26. https://bodhi.fedoraproject.org/updates/FEDORA-2018-add17f7db7 llvm4.0-4.0.1-4.fc27 has been pushed to the Fedora 27 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-2018-5db8f23c3f llvm-5.0.1-5.fc27 has been pushed to the Fedora 27 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-2018-cffb23a2cc llvm5.0-5.0.1-7.fc28 has been submitted as an update to Fedora 28. https://bodhi.fedoraproject.org/updates/FEDORA-2018-c1c16c1fdb llvm5.0-5.0.1-7.fc28 has been pushed to the Fedora 28 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-2018-c1c16c1fdb llvm-4.0.1-3.fc26 has been pushed to the Fedora 26 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-2018-add17f7db7 llvm-5.0.1-5.fc27 has been pushed to the Fedora 27 stable repository. If problems still persist, please make note of it in this bug report. llvm-4.0.1-3.fc26 has been pushed to the Fedora 26 stable repository. If problems still persist, please make note of it in this bug report. llvm4.0-4.0.1-4.fc27 has been pushed to the Fedora 27 stable repository. If problems still persist, please make note of it in this bug report. llvm5.0-5.0.1-7.fc28 has been pushed to the Fedora 28 stable repository. If problems still persist, please make note of it in this bug report. pocl-1.1-2.fc28 lldb-6.0.0-3.fc28 clang-6.0.0-5.fc28 llvm-6.0.0-11.fc28 has been submitted as an update to Fedora 28. https://bodhi.fedoraproject.org/updates/FEDORA-2018-02c4091319 clang-6.0.0-5.fc28, lldb-6.0.0-3.fc28, llvm-6.0.0-11.fc28, mesa-18.0.0-2.fc28.1, pocl-1.1-2.fc28 has been pushed to the Fedora 28 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-2018-02c4091319 clang-6.0.0-5.fc28 lldb-6.0.0-3.fc28 llvm-6.0.0-11.fc28 mesa-18.0.0-3.fc28 pocl-1.1-2.fc28 has been submitted as an update to Fedora 28. https://bodhi.fedoraproject.org/updates/FEDORA-2018-02c4091319 clang-6.0.0-5.fc28, lldb-6.0.0-3.fc28, llvm-6.0.0-11.fc28, mesa-18.0.0-3.fc28, pocl-1.1-2.fc28 has been pushed to the Fedora 28 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-2018-02c4091319 clang-6.0.0-5.fc28, lldb-6.0.0-3.fc28, llvm-6.0.0-11.fc28, mesa-18.0.0-3.fc28, pocl-1.1-2.fc28 has been pushed to the Fedora 28 stable repository. If problems still persist, please make note of it in this bug report. |