ARM: Compiler Crash when compiling NIOIRC in release mode
helje5 opened this issue · 2 comments
helje5 commented
docker run --rm helje5/rpi-swift-dev:4.1.0 bash -c "git clone -b nio/master https://github.com/NozeIO/swift-nio-irc.git && cd swift-nio-irc && swift build -c release"
gives
Compile CNIOLinux shim.c
Compile CNIOSHA1 c_nio_sha1.c
Compile CNIOAtomics src/c-atomics.c
Compile CNIODarwin shim.c
Compile CNIOZlib empty.c
Compile CNIOHTTPParser c_nio_http_parser.c
Compile Swift Module 'NIOPriorityQueue' (2 sources)
Compile Swift Module 'Eliza' (1 sources)
Compile Swift Module 'NIOConcurrencyHelpers' (2 sources)
Compile Swift Module 'NIO' (51 sources)
Compile Swift Module 'NIOFoundationCompat' (1 sources)
Compile Swift Module 'NIOHTTP1' (8 sources)
Compile Swift Module 'NIOIRC' (18 sources)
swift: /mnt/SWIFT/4.1_LAST/llvm/include/llvm/ADT/Optional.h:146: T &&llvm::Optional<swift::ProjectionKind>::operator*() && [T = swift::ProjectionKind]: Assertion `hasVal' failed.
Stack dump:
0. Program arguments: /usr/bin/swift -frontend -c /src/.build/checkouts/swift-nio-irc.git-982576079/Sources/NIOIRC/Helpers/ByteBufferExtras.swift /src/.build/checkouts/swift-nio-irc.git-982576079/Sources/NIOIRC/Helpers/Scandinavian.swift /src/.build/checkouts/swift-nio-irc.git-982576079/Sources/NIOIRC/IRCChannelHandler.swift /src/.build/checkouts/swift-nio-irc.git-982576079/Sources/NIOIRC/IRCCommandParser.swift /src/.build/checkouts/swift-nio-irc.git-982576079/Sources/NIOIRC/IRCDispatcher.swift /src/.build/checkouts/swift-nio-irc.git-982576079/Sources/NIOIRC/IRCMessageParser.swift /src/.build/checkouts/swift-nio-irc.git-982576079/Sources/NIOIRC/IRCMessageTarget.swift /src/.build/checkouts/swift-nio-irc.git-982576079/Sources/NIOIRC/Model/IRCChannelMode.swift /src/.build/checkouts/swift-nio-irc.git-982576079/Sources/NIOIRC/Model/IRCChannelName.swift /src/.build/checkouts/swift-nio-irc.git-982576079/Sources/NIOIRC/Model/IRCCommand.swift /src/.build/checkouts/swift-nio-irc.git-982576079/Sources/NIOIRC/Model/IRCCommandCodes.swift /src/.build/checkouts/swift-nio-irc.git-982576079/Sources/NIOIRC/Model/IRCMessage.swift /src/.build/checkouts/swift-nio-irc.git-982576079/Sources/NIOIRC/Model/IRCMessageRecipient.swift /src/.build/checkouts/swift-nio-irc.git-982576079/Sources/NIOIRC/Model/IRCNickName.swift /src/.build/checkouts/swift-nio-irc.git-982576079/Sources/NIOIRC/Model/IRCServerName.swift /src/.build/checkouts/swift-nio-irc.git-982576079/Sources/NIOIRC/Model/IRCUserID.swift /src/.build/checkouts/swift-nio-irc.git-982576079/Sources/NIOIRC/Model/IRCUserInfo.swift /src/.build/checkouts/swift-nio-irc.git-982576079/Sources/NIOIRC/Model/IRCUserMode.swift -target armv7-unknown-linux-gnueabihf -disable-objc-interop -sdk / -I /src/.build/armv7-unknown-linux-gnueabihf/release -I /src/.build/checkouts/swift-nio.git--936998177/Sources/CNIOSHA1/include -I /src/.build/checkouts/swift-nio.git--936998177/Sources/CNIOAtomics/include -I /src/.build/checkouts/swift-nio.git--936998177/Sources/CNIODarwin/include -I /src/.build/checkouts/swift-nio.git--936998177/Sources/CNIOLinux/include -module-cache-path /src/.build/armv7-unknown-linux-gnueabihf/release/ModuleCache -swift-version 4 -O -D SWIFT_PACKAGE -Xcc -fmodule-map-file=/src/.build/armv7-unknown-linux-gnueabihf/release/CNIOSHA1.build/module.modulemap -Xcc -fmodule-map-file=/src/.build/armv7-unknown-linux-gnueabihf/release/CNIOAtomics.build/module.modulemap -Xcc -fmodule-map-file=/src/.build/armv7-unknown-linux-gnueabihf/release/CNIODarwin.build/module.modulemap -Xcc -fmodule-map-file=/src/.build/armv7-unknown-linux-gnueabihf/release/CNIOLinux.build/module.modulemap -Xcc -fmodule-map-file=/src/.build/checkouts/swift-nio-zlib-support.git-1092617176/module.modulemap -emit-module-doc-path /src/.build/armv7-unknown-linux-gnueabihf/release/NIOIRC.swiftdoc -parse-as-library -module-name NIOIRC -emit-module-path /src/.build/armv7-unknown-linux-gnueabihf/release/NIOIRC.swiftmodule -emit-dependencies-path /src/.build/armv7-unknown-linux-gnueabihf/release/NIOIRC.build/NIOIRC.d -num-threads 4 -o /src/.build/armv7-unknown-linux-gnueabihf/release/NIOIRC.build/Helpers/ByteBufferExtras.swift.o -o /src/.build/armv7-unknown-linux-gnueabihf/release/NIOIRC.build/Helpers/Scandinavian.swift.o -o /src/.build/armv7-unknown-linux-gnueabihf/release/NIOIRC.build/IRCChannelHandler.swift.o -o /src/.build/armv7-unknown-linux-gnueabihf/release/NIOIRC.build/IRCCommandParser.swift.o -o /src/.build/armv7-unknown-linux-gnueabihf/release/NIOIRC.build/IRCDispatcher.swift.o -o /src/.build/armv7-unknown-linux-gnueabihf/release/NIOIRC.build/IRCMessageParser.swift.o -o /src/.build/armv7-unknown-linux-gnueabihf/release/NIOIRC.build/IRCMessageTarget.swift.o -o /src/.build/armv7-unknown-linux-gnueabihf/release/NIOIRC.build/Model/IRCChannelMode.swift.o -o /src/.build/armv7-unknown-linux-gnueabihf/release/NIOIRC.build/Model/IRCChannelName.swift.o -o /src/.build/armv7-unknown-linux-gnueabihf/release/NIOIRC.build/Model/IRCCommand.swift.o -o /src/.build/armv7-unknown-linux-gnueabihf/release/NIOIRC.build/Model/IRCCommandCodes.swift.o -o /src/.build/armv7-unknown-linux-gnueabihf/release/NIOIRC.build/Model/IRCMessage.swift.o -o /src/.build/armv7-unknown-linux-gnueabihf/release/NIOIRC.build/Model/IRCMessageRecipient.swift.o -o /src/.build/armv7-unknown-linux-gnueabihf/release/NIOIRC.build/Model/IRCNickName.swift.o -o /src/.build/armv7-unknown-linux-gnueabihf/release/NIOIRC.build/Model/IRCServerName.swift.o -o /src/.build/armv7-unknown-linux-gnueabihf/release/NIOIRC.build/Model/IRCUserID.swift.o -o /src/.build/armv7-unknown-linux-gnueabihf/release/NIOIRC.build/Model/IRCUserInfo.swift.o -o /src/.build/armv7-unknown-linux-gnueabihf/release/NIOIRC.build/Model/IRCUserMode.swift.o
1. While running pass #8728 SILFunctionTransform "Redundant Load Elimination" on SILFunction "@_T03NIO10ByteBufferV6NIOIRCE3setSix15integerAsString_Si2atxm2asts13SignedIntegerRzlFys09UnsafeRawC7PointerVcfU_".
for expression at [/src/.build/checkouts/swift-nio-irc.git-982576079/Sources/NIOIRC/Helpers/ByteBufferExtras.swift:58:30 - line:78:5] RangeText="{ rbpp in
let mrbpp = UnsafeMutableRawBufferPointer(mutating: rbpp)
let base = mrbpp.baseAddress!.assumingMemoryBound(to: UInt8.self)
.advanced(by: index)
var cursor = base.advanced(by: charCount)
let c0 : T = 48
var negativeAbsoluteValue = integer < 0 ? integer : -integer
repeat {
cursor -= 1
cursor.pointee = UInt8(c0 - (negativeAbsoluteValue % 10))
negativeAbsoluteValue /= 10;
}
while negativeAbsoluteValue != 0
if integer < 0 {
cursor -= 1
cursor.pointee = 45 // -
}
}"
<unknown>:0: error: unable to execute command: Aborted
<unknown>:0: error: compile command failed due to signal 6 (use -v to see invocation)
error: terminated(1): /usr/bin/swift-build-tool -f /src/.build/release.yaml main output:
helje5 commented
Debug mode runs through.
helje5 commented
Swift 4 thing, not relevant anymore.