From owner-freebsd-multimedia@freebsd.org Thu Nov 22 21:03:57 2018 Return-Path: Delivered-To: freebsd-multimedia@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 964191107C36 for ; Thu, 22 Nov 2018 21:03:57 +0000 (UTC) (envelope-from marklmi@yahoo.com) Received: from mailman.ysv.freebsd.org (mailman.ysv.freebsd.org [IPv6:2001:1900:2254:206a::50:5]) by mx1.freebsd.org (Postfix) with ESMTP id 03938699EB for ; Thu, 22 Nov 2018 21:03:57 +0000 (UTC) (envelope-from marklmi@yahoo.com) Received: by mailman.ysv.freebsd.org (Postfix) id B7CAF1107C35; Thu, 22 Nov 2018 21:03:56 +0000 (UTC) Delivered-To: multimedia@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7FCD11107C2F for ; Thu, 22 Nov 2018 21:03:56 +0000 (UTC) (envelope-from marklmi@yahoo.com) Received: from sonic314-21.consmr.mail.ne1.yahoo.com (sonic314-21.consmr.mail.ne1.yahoo.com [66.163.189.147]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id DCF9B699E8 for ; Thu, 22 Nov 2018 21:03:54 +0000 (UTC) (envelope-from marklmi@yahoo.com) X-YMail-OSG: drCm0fgVM1nzxWmAfgTor8eVGeN4biIS1zKEjLO1dpa9VgS4Pf3Wd5N9dLYAAOA 9WWNwY1DX.9wSz3J.OXctecJc7hvf6RyY2uyJAMbcAYdWbV0sCstASfeVazES6vke3Oy4y9sEsG1 Uf2IXAo66MH7dsRev0R3cP2JPVRj7TxT7b6rBIm8E456OJvKxaVimeULsxWybk2Qdcu7qjY7X.76 a9BfFcRRLaWd_msTtFHe256GuBic_KHZ7tFg9skiuJcZwu1awonDzz83qip4HZQvKA6mmJBvhDAt g4IHVYg.XlBvzQwJOQT2fabO8IBsEkyVkGHTDISla5MrfWnOG6g6dAcbfMFVidTPpp23kceOcEgA s42wrWZpHm9.EKnwb.watJGbqe_6KvjhPyJ4UXvEBc6gRghfwLAMLCL5ZI2sa3i0GqrGKI9ru3nT rQevanQ5bL5GN92UL.JVLJif6sV29xhXQreFEQ3267bYTCCRXLwGfxNGHoysa4qMsak1pvDI.Ufa mF1oRroFA05vYlNsoILniYYdve2TMTaSAw7IsobRFzn7b5Ac0jPdY7NYPLsY.g71GnV0aQ_D7Gxf eaiJu.2iWYa8Cr0NZuVagIZeK_mTzOiZXQRs2yEjQH6GRLkfefTEDanknmCsghnCSUGN2tQdVxLS eBOxpBK00KeIs0ejpbZxWg9X2FS4thdFKwCoyr9ZrDGz4jOKIQCEt4V4MZi7J3zblURCr49aYi1j eIRLUyQShMbwmCaRbQx0EVY9w8LD9a70fk53aPra0PwF.FbyalPlFhgpOamHrn.vK57MBzRobMyG kmnYoFuUsx4VJRFpYJfVRbsKvMvk1WHgOWJr5yAk8hizKroQuKhOTumdVKrPZTZHeWg0yaTVfYNn OT3mCUxJDWbGeTAnl9bWuSO1LTyPkvKEmyX488Y5m9zKHu5m10AtCyAGtvtNzsciw.hiMTcHJGU7 PKb089kMMvx3OPaa.IakJMDnDubiRAJXZnxYEr05Od89uc7DBGebKtA5WXioeCZYUVuqxyIn92zo sXuICJtX6xa8nelu.JY1w4PoY_ToUw._6AWNdjy7LUF.2KCRgm36SqwBZ2VKQkhw- Received: from sonic.gate.mail.ne1.yahoo.com by sonic314.consmr.mail.ne1.yahoo.com with HTTP; Thu, 22 Nov 2018 21:03:47 +0000 Received: from c-76-115-7-162.hsd1.or.comcast.net (EHLO [192.168.1.25]) ([76.115.7.162]) by smtp427.mail.ne1.yahoo.com (Oath Hermes SMTP Server) with ESMTPA ID a6c7a84a81705a46435982b5ecefb14e; Thu, 22 Nov 2018 21:03:44 +0000 (UTC) From: Mark Millard Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Mime-Version: 1.0 (Mac OS X Mail 12.1 \(3445.101.1\)) Subject: head -r340287 based powerpc64: multimedia/ffmpeg -r484273 gets a system-clang assert failure Message-Id: Date: Thu, 22 Nov 2018 13:03:42 -0800 To: FreeBSD Toolchain , ports-list freebsd , multimedia@FreeBSD.org X-Mailer: Apple Mail (2.3445.101.1) X-Rspamd-Queue-Id: 03938699EB X-Spamd-Result: default: False [-7.58 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; FORGED_RECIPIENTS_FORWARDING(0.00)[]; R_SPF_NEUTRAL(0.00)[?all]; FORWARDED(0.00)[multimedia@mailman.ysv.freebsd.org]; MV_CASE(0.50)[]; FREEMAIL_FROM(0.00)[yahoo.com]; TO_DN_SOME(0.00)[]; RCVD_DKIM_ARC_DNSWL_MED(-0.50)[]; DKIM_TRACE(0.00)[yahoo.com:+]; RCVD_IN_DNSWL_MED(-0.20)[5.0.0.0.0.5.0.0.0.0.0.0.0.0.0.0.a.6.0.2.4.5.2.2.0.0.9.1.1.0.0.2.list.dnswl.org : 127.0.9.2]; DMARC_POLICY_ALLOW(-0.50)[yahoo.com,reject]; MX_GOOD(-0.01)[cached: mta6.am0.yahoodns.net]; NEURAL_HAM_SHORT(-1.00)[-0.999,0]; RCVD_NO_TLS_LAST(0.10)[]; FROM_EQ_ENVFROM(0.00)[]; IP_SCORE(-3.67)[ip: (-9.87), ipnet: 2001:1900:2254::/48(-4.75), asn: 10310(-3.64), country: US(-0.09)]; FREEMAIL_ENVFROM(0.00)[yahoo.com]; ASN(0.00)[asn:10310, ipnet:2001:1900:2254::/48, country:US]; FORGED_RECIPIENTS(0.00)[freebsd-toolchain@freebsd.org ..,freebsd-multimedia@freebsd.org]; MID_RHS_MATCH_FROM(0.00)[]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; R_DKIM_ALLOW(-0.20)[yahoo.com]; RCVD_COUNT_FIVE(0.00)[6]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[3]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_GOOD(-0.10)[text/plain] X-Rspamd-Server: mx1.freebsd.org X-BeenThere: freebsd-multimedia@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Multimedia discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 22 Nov 2018 21:03:57 -0000 During a (native) poudriere-devel run I got the following failure. [Unfortunately clang and poudriere are mismatched for where the preprocessed source(s) and run script(s) are placed as far as what is in the poudriere tar archive produced. But I did have kern.corefile set so that the core file was captured.] This happens to be on powerpc64 where I experiment with using fairly modern cc/c++ and the like. devel/powerpc64-xtoolchain-gcc was used for buildworld buildkernel and clang was built as cc. But the system binutils is from base/binutils . So not an official gcc 4.2.1 toolchain context, more of a futures-testing context. The error report from clang (after 332 other ports had built): cc: error: unable to execute command: Abort trap (core dumped) cc: error: clang frontend command failed due to signal (use -v to see = invocation) FreeBSD clang version 6.0.1 (tags/RELEASE_601/final 335540) (based on = LLVM 6.0.1) Target: powerpc64-unknown-freebsd13.0 Thread model: posix InstalledDir: /usr/bin cc: note: diagnostic msg: PLEASE submit a bug report to = https://bugs.freebsd.org/submit/ and include the crash backtrace, = preprocessed source, and associated run script. cc: note: diagnostic msg:=20 ******************** PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT: Preprocessed source(s) and associated run script(s) are located at: cc: note: diagnostic msg: /tmp/vf_convolution-9639c0.c cc: note: diagnostic msg: /tmp/vf_convolution-9639c0.sh cc: note: diagnostic msg:=20 ******************** gmake[1]: *** [ffbuild/common.mak:60: libavfilter/vf_convolution.o] = Error 254 gmake[1]: *** Waiting for unfinished jobs.... gmake[1]: Leaving directory = '/wrkdirs/usr/ports/multimedia/ffmpeg/work/ffmpeg-4.1' =3D=3D=3D> Compilation failed unexpectedly. Try to set MAKE_JOBS_UNSAFE=3Dyes and rebuild before reporting the = failure to the maintainer. *** Error code 1 Core was generated by `/usr/bin/cc -cc1 -triple = powerpc64-unknown-freebsd13.0 -emit-obj -disable-free -'. Program terminated with signal SIGABRT, Aborted. #0 0x00000000131c69e8 in .__sys_thr_kill () at thr_kill.S:3 3 RSYSCALL(thr_kill) (gdb) bt #0 0x00000000131c69e8 in .__sys_thr_kill () at thr_kill.S:3 #1 0x00000000131c5fbc in __raise (s=3D) at = /usr/src/lib/libc/gen/raise.c:52 #2 0x0000000013187bf0 in abort () at = /usr/src/lib/libc/stdlib/abort.c:79 #3 0x00000000131b47d8 in __assert (func=3D, = file=3D, line=3D, failedexpr=3D) at /usr/src/lib/libc/gen/assert.c:51 #4 0x0000000011e2d2c8 in llvm::EVT::getSimpleVT () at = /usr/src/contrib/llvm/include/llvm/CodeGen/ValueTypes.h:254 #5 llvm::TargetLoweringBase::getSimpleValueType () at = /usr/src/contrib/llvm/include/llvm/CodeGen/TargetLowering.h:1047 #6 mightUseCTR () at = /usr/src/contrib/llvm/lib/Target/PowerPC/PPCCTRLoops.cpp:407 #7 0x0000000011e2fca8 in convertToCTRLoop () at = /usr/src/contrib/llvm/lib/Target/PowerPC/PPCCTRLoops.cpp:527 #8 0x0000000011e31eec in runOnFunction () at = /usr/src/contrib/llvm/lib/Target/PowerPC/PPCCTRLoops.cpp:210 #9 0x000000001256c6dc in llvm::FPPassManager::runOnFunction () at = /usr/src/contrib/llvm/lib/IR/LegacyPassManager.cpp:1520 #10 0x000000001256c878 in llvm::FPPassManager::runOnModule () at = /usr/src/contrib/llvm/lib/IR/LegacyPassManager.cpp:1541 #11 0x000000001256d760 in runOnModule () at = /usr/src/contrib/llvm/lib/IR/LegacyPassManager.cpp:1597 #12 llvm::legacy::PassManagerImpl::run () at = /usr/src/contrib/llvm/lib/IR/LegacyPassManager.cpp:1700 #13 0x0000000010d4fb9c in EmitAssembly () at = /usr/src/contrib/llvm/tools/clang/lib/CodeGen/BackendUtil.cpp:815 #14 0x0000000010d51758 in clang::EmitBackendOutput () at = /usr/src/contrib/llvm/tools/clang/lib/CodeGen/BackendUtil.cpp:1181 #15 0x00000000103add10 in clang::BackendConsumer::HandleTranslationUnit = () at = /usr/src/contrib/llvm/tools/clang/lib/CodeGen/CodeGenAction.cpp:294 #16 0x0000000010912e64 in clang::ParseAST () at = /usr/src/contrib/llvm/tools/clang/lib/Parse/ParseAST.cpp:159 #17 0x00000000108fcfb8 in clang::ASTFrontendAction::ExecuteAction () at = /usr/src/contrib/llvm/tools/clang/lib/Frontend/FrontendAction.cpp:999 #18 0x00000000103accec in clang::CodeGenAction::ExecuteAction () at = /usr/src/contrib/llvm/tools/clang/lib/CodeGen/CodeGenAction.cpp:1031 #19 0x0000000010901ba0 in clang::FrontendAction::Execute () at = /usr/src/contrib/llvm/tools/clang/lib/Frontend/FrontendAction.cpp:897 #20 0x00000000112625c0 in clang::CompilerInstance::ExecuteAction () at = /usr/src/contrib/llvm/tools/clang/lib/Frontend/CompilerInstance.cpp:991 #21 0x000000001039516c in clang::ExecuteCompilerInvocation () at = /usr/src/contrib/llvm/tools/clang/lib/FrontendTool/ExecuteCompilerInvocati= on.cpp:252 #22 0x00000000103894f8 in cc1_main () at = /usr/src/contrib/llvm/tools/clang/tools/driver/cc1_main.cpp:221 #23 0x00000000103418b4 in ExecuteCC1Tool () at = /usr/src/contrib/llvm/tools/clang/tools/driver/driver.cpp:310 #24 main () at = /usr/src/contrib/llvm/tools/clang/tools/driver/driver.cpp:389 The assert looks to be the one listed in: /// Return the SimpleValueType held in the specified simple EVT. MVT getSimpleVT() const { assert(isSimple() && "Expected a SimpleValueType!"); return V; } This is in: /// Extended Value Type. Capable of holding value types which are not = native /// for any processor (such as the i12345 type), as well as the types = an MVT /// can represent. struct EVT { . . . in: /usr/src/contrib/llvm/include/llvm/CodeGen/ValueTypes.h Used from: /usr/src/contrib/llvm/include/llvm/CodeGen/TargetLowering.h 's class TargetLoweringBase 's: /// Return the MVT corresponding to this LLVM type. See getValueType. MVT getSimpleValueType(const DataLayout &DL, Type *Ty, bool AllowUnknown =3D false) const { return getValueType(DL, Ty, AllowUnknown).getSimpleVT(); } in turn used from: /usr/src/contrib/llvm/lib/Target/PowerPC/PPCCTRLoops.cpp 's bool PPCCTRLoops::mightUseCTR(BasicBlock *BB) 's: unsigned Opcode =3D 0; if (F->getIntrinsicID() !=3D Intrinsic::not_intrinsic) { switch (F->getIntrinsicID()) { default: continue; // If we have a call to ppc_is_decremented_ctr_nonzero, or = ppc_mtctr // we're definitely using CTR. case Intrinsic::ppc_is_decremented_ctr_nonzero: case Intrinsic::ppc_mtctr: return true; // VisualStudio defines setjmp as _setjmp #if defined(_MSC_VER) && defined(setjmp) && \ !defined(setjmp_undefined_for_msvc) # pragma push_macro("setjmp") # undef setjmp # define setjmp_undefined_for_msvc #endif case Intrinsic::setjmp: #if defined(_MSC_VER) && defined(setjmp_undefined_for_msvc) // let's return it to _setjmp state # pragma pop_macro("setjmp") # undef setjmp_undefined_for_msvc #endif case Intrinsic::longjmp: // Exclude eh_sjlj_setjmp; we don't need to exclude = eh_sjlj_longjmp // because, although it does clobber the counter register, the // control can't then return to inside the loop unless there = is also // an eh_sjlj_setjmp. case Intrinsic::eh_sjlj_setjmp: =20 case Intrinsic::memcpy: case Intrinsic::memmove: case Intrinsic::memset: case Intrinsic::powi: case Intrinsic::log: case Intrinsic::log2: case Intrinsic::log10: case Intrinsic::exp: case Intrinsic::exp2: case Intrinsic::pow: case Intrinsic::sin: case Intrinsic::cos: return true; case Intrinsic::copysign: if (CI->getArgOperand(0)->getType()->getScalarType()-> isPPC_FP128Ty()) return true; else continue; // ISD::FCOPYSIGN is never a library call. case Intrinsic::sqrt: Opcode =3D ISD::FSQRT; = break; case Intrinsic::floor: Opcode =3D ISD::FFLOOR; = break; case Intrinsic::ceil: Opcode =3D ISD::FCEIL; = break; case Intrinsic::trunc: Opcode =3D ISD::FTRUNC; = break; case Intrinsic::rint: Opcode =3D ISD::FRINT; = break; case Intrinsic::nearbyint: Opcode =3D = ISD::FNEARBYINT; break; case Intrinsic::round: Opcode =3D ISD::FROUND; = break; case Intrinsic::minnum: Opcode =3D ISD::FMINNUM; = break; case Intrinsic::maxnum: Opcode =3D ISD::FMAXNUM; = break; case Intrinsic::umul_with_overflow: Opcode =3D ISD::UMULO; = break; case Intrinsic::smul_with_overflow: Opcode =3D ISD::SMULO; = break; } } // Conversion happens only for FP calls. if (!CI->getArgOperand(0)->getType()->isFloatingPointTy()) return true; =20 switch (Func) { default: return true; case LibFunc_copysign: case LibFunc_copysignf: continue; // ISD::FCOPYSIGN is never a library call. case LibFunc_copysignl: return true; case LibFunc_fabs: case LibFunc_fabsf: case LibFunc_fabsl: continue; // ISD::FABS is never a library call. case LibFunc_sqrt: case LibFunc_sqrtf: case LibFunc_sqrtl: Opcode =3D ISD::FSQRT; break; case LibFunc_floor: case LibFunc_floorf: case LibFunc_floorl: Opcode =3D ISD::FFLOOR; break; case LibFunc_nearbyint: case LibFunc_nearbyintf: case LibFunc_nearbyintl: Opcode =3D ISD::FNEARBYINT; break; case LibFunc_ceil: case LibFunc_ceilf: case LibFunc_ceill: Opcode =3D ISD::FCEIL; break; case LibFunc_rint: case LibFunc_rintf: case LibFunc_rintl: Opcode =3D ISD::FRINT; break; case LibFunc_round: case LibFunc_roundf: case LibFunc_roundl: Opcode =3D ISD::FROUND; break; case LibFunc_trunc: case LibFunc_truncf: case LibFunc_truncl: Opcode =3D ISD::FTRUNC; break; case LibFunc_fmin: case LibFunc_fminf: case LibFunc_fminl: Opcode =3D ISD::FMINNUM; break; case LibFunc_fmax: case LibFunc_fmaxf: case LibFunc_fmaxl: Opcode =3D ISD::FMAXNUM; break; } } if (Opcode) { MVT VTy =3D TLI->getSimpleValueType( *DL, CI->getArgOperand(0)->getType(), true); if (VTy =3D=3D MVT::Other) return true; if (TLI->isOperationLegalOrCustom(Opcode, VTy)) continue; else if (VTy.isVector() && TLI->isOperationLegalOrCustom(Opcode, = VTy.getScalarType())) continue; return true; } . . . The compile line from the log was: cc -I. -I./ -DLIBICONV_PLUG -isystem /usr/local/include -D_ISOC99_SOURCE = -D_FILE_OFFSET_BITS=3D64 -D_LARGEFILE_SOURCE -DPIC -DZLIB_CONST = -DHAVE_AV_CONFIG_H -DBUILDING_avfilter -O2 -pipe -DLIBICONV_PLUG -g = -isystem /usr/local/include -fno-strict-aliasing -std=3Dc11 = -fomit-frame-pointer -fPIC -maltivec -mabi=3Daltivec -pthread = -I/usr/local/include -I/usr/local/include/p11-kit-1 -I/usr/local/include = -I/usr/local/include/freetype2 -I/usr/local/include/freetype2 = -I/usr/local/include/opus -I/usr/local/include/opus -I/usr/local/include = -I/usr/local/include -I/usr/local/include -I/usr/local/include = -I/usr/local/include -I/usr/local/include -I/usr/local/include = -I/usr/local/include -I/usr/local/include -I/usr/local/include -pthread = -I/usr/local/include -pthread -I/usr/local/include -pthread = -I/usr/local/include -pthread -I/usr/local/include -I/usr/local/include = -Wdeclaration-after-statement -Wall -Wdisabled-optimization = -Wpointer-arith -Wredundant-decls -Wwrite-strings -Wtype-limits -Wundef = -Wmissing-prototypes -Wno-pointer-to-int-cast -Wstrict-prototypes = -Wempty-body -Wno-parentheses -Wno-switch -Wno-format-zero-length = -Wno-pointer-sign -Wno-unused-const-variable -O3 -fno-math-errno = -fno-signed-zeros -mstack-alignment=3D16 -Qunused-arguments = -Werror=3Dimplicit-function-declaration -Werror=3Dmissing-prototypes = -Werror=3Dreturn-type -MMD -MF libavfilter/vf_convolution.d -MT = libavfilter/vf_convolution.o -c -o libavfilter/vf_convolution.o = libavfilter/vf_convolution.c As for context vintages: # svnlite info /usr/ports/multimedia/ffmpeg Path: /usr/ports/multimedia/ffmpeg Working Copy Root Path: /usr/ports URL: svn://svn0.us-west.freebsd.org/ports/head/multimedia/ffmpeg Relative URL: ^/head/multimedia/ffmpeg Repository Root: svn://svn0.us-west.freebsd.org/ports Repository UUID: 35697150-7ecd-e111-bb59-0022644237b5 Revision: 484783 Node Kind: directory Schedule: normal Last Changed Author: jbeich Last Changed Rev: 484273 Last Changed Date: 2018-11-05 17:50:26 -0800 (Mon, 05 Nov 2018) # uname -apKU FreeBSD FBSDG5L 13.0-CURRENT FreeBSD 13.0-CURRENT #1 r340287M: Fri Nov = 9 19:30:13 PST 2018 = markmi@FBSDFSSD:/usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.powerpc64/us= r/src/powerpc.powerpc64/sys/GENERIC64vtsc-NODBG powerpc powerpc64 = 1300003 1300003 Right now it looks like the poudriere run still has 3+ hours to go for the rest of the ports to build. =3D=3D=3D Mark Millard marklmi at yahoo.com ( dsl-only.net went away in early 2018-Mar)