Summary: | net/iodine: clang 6 crashes during build | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | Ports & Packages | Reporter: | Jan Beich <jbeich> | ||||||
Component: | Individual Port(s) | Assignee: | Dimitry Andric <dim> | ||||||
Status: | Closed FIXED | ||||||||
Severity: | Affects Only Me | CC: | dim | ||||||
Priority: | --- | Keywords: | toolchain | ||||||
Version: | Latest | ||||||||
Hardware: | Any | ||||||||
OS: | Any | ||||||||
Bug Depends on: | |||||||||
Bug Blocks: | 224669 | ||||||||
Attachments: |
|
Description
Jan Beich
2018-01-03 15:59:52 UTC
Created attachment 189369 [details]
command line args (for clang 6.0)
Likely upstream bug: https://bugs.llvm.org/show_bug.cgi?id=35773 A commit references this bug: Author: dim Date: Mon Jan 15 18:20:15 UTC 2018 New revision: 328010 URL: https://svnweb.freebsd.org/changeset/base/328010 Log: Pull in r322473 from upstream llvm trunk (by Andrei Elovikov): [LV] Don't call recordVectorLoopValueForInductionCast for newly-created IV from a trunc. Summary: This method is supposed to be called for IVs that have casts in their use-def chains that are completely ignored after vectorization under PSE. However, for truncates of such IVs the same InductionDescriptor is used during creation/widening of both original IV based on PHINode and new IV based on TruncInst. This leads to unintended second call to recordVectorLoopValueForInductionCast with a VectorLoopVal set to the newly created IV for a trunc and causes an assert due to attempt to store new information for already existing entry in the map. This is wrong and should not be done. Fixes PR35773. Reviewers: dorit, Ayal, mssimpso Reviewed By: dorit Subscribers: RKSimon, dim, dcaballe, hsaito, llvm-commits, hiraditya Differential Revision: https://reviews.llvm.org/D41913 This should fix "Vector value already set for part" assertions when building the net/iodine and sysutils/daa2iso ports. Reported by: jbeich PR: 224867,224868 Changes: head/contrib/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp I confirm, the port builds fine now. http://beefy12.nyi.freebsd.org/data/head-amd64-default/p459147_s328035/logs/iodine-0.7.0_1.log |