Created attachment 189368 [details] src/iodined.c (compressed, preprocessed) CC iodined.c Assertion failed: (!hasVectorValue(Key, Part) && "Vector value already set for part"), function setVectorValue, file /poudriere/jails/projects/clang600-import-amd64/usr/src/contrib/llvm/lib/Transforms/Vectorize/VPlan.h, line 167. cc: error: unable to execute command: Abort trap cc: error: clang frontend command failed due to signal (use -v to see invocation) FreeBSD clang version 6.0.0 (trunk 321545) (based on LLVM 6.0.0svn) Target: x86_64-unknown-freebsd12.0 Thread model: posix InstalledDir: /usr/bin http://package18.nyi.freebsd.org/data/headamd64PR224669-default/2018-01-02_08h32m49s/logs/errors/iodine-0.7.0_1.log
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